All Apps and Add-ons

Splunk Add-on Builder Custom Python Code: Issues setting initial checkpoint

Blake_D
Engager

Greetings,

I am writing a REST API call ingestion that requires authentication via first obtaining an auth token before the actual input, so I'm making use of the custom python code data ingestion builder for the first time.  Having issues with the initial setting of a checkpoint for the start date of the api call specifically.  I figure I need to check to see if the checkpoint exists, and if it doesn't - set the check point to the provided date from within the Data Input settings.  

When I try this with the below code snippet, I just get an error from the first line:

AttributeError: 'NoneType' object has no attribute 'encode'

ERROR 'NoneType' object has no attribute 'encode'

 

Not sure if there is a better way to set the initial check point somewhere that I'm not finding (this is in the collect_events function definition - so probably), or if there is a better way within python to handle the "if this doesn't exist, do this thing"

 

 

    start_date = helper.get_check_point(input_name)
    
    if start_date is None:
        helper.save_check_point(input_name, helper.get_arg("data_ingestion_start_date"))
        start_date = helper.get_check_point(input_name) 
        
    else:
        start_date = helper.get_check_point(input_name) 

 

  

Labels (1)
0 Karma

VatsalJagani
SplunkTrust
SplunkTrust

Make sure the field `input_name` field is defined and it has the right string value.

0 Karma
Got questions? Get answers!

Join the Splunk Community Slack to learn, troubleshoot, and make connections with fellow Splunk practitioners in real time!

Meet up IRL or virtually!

Join Splunk User Groups to connect and learn in-person by region or remotely by topic or industry.

Get Updates on the Splunk Community!

Persistent Queue at TcpOut — One of Splunk's Most Practical Features

Splunk introduced persistent queueing at the tcpout layer as one of the most practical resilience features in ...

Skip the Awkward Silence: Have a .conf-ersation at .conf26

Picture this. You arrive at .conf26 already having your socializing and networking plans mapped out. No ...

Rethinking Zero Trust: From Product Purchases to Logical Control Evidence

Implementing Zero Trust (ZT) across complex environments often falters at the very beginning due to a ...