singer-io / tap-chargebee

Singer.io tap for extracting data from the Chargebee API
https://www.singer.io/
GNU Affero General Public License v3.0
7 stars 32 forks source link

"Expecting value: line 1 column 1 (char 0)" - Stitch integration #40

Open james-screencastify opened 3 years ago

james-screencastify commented 3 years ago

Hi there,

I'm using Stitch to sync some of our Chargebee data with Google BigQuery datasets.

The extractions run every 6 hours, and the initial 5 were successful. We then started receiving this error:

Expecting value: line 1 column 1 (char 0

The first time the error occurred, I re-ran the extraction manually and it was successful. The next day, the error occurred again, and now is happening on 100% of retries. I've pasted a portion of the logs below. From a quick scan, it seems to be an issue with the invoice extraction from Chargebee.

Does anyone have any ideas on how to investigate the issue further? Thank you!

2021-03-24 15:21:27,538Z    tap - INFO [smart-services] event successfully sent to kafka: com.stitchdata.streamRecordCount [2] at offset None
2021-03-24 15:21:27,538Z    tap - INFO replicated 100 records from "invoices" endpoint
2021-03-24 15:21:27,538Z    tap - INFO Advancing by one offset.
2021-03-24 15:21:27,538Z    tap - INFO Making GET request to https://screencastify.chargebee.com/api/v2/invoices
2021-03-24 15:22:37,498Z    tap - ERROR Expecting value: line 1 column 1 (char 0)
2021-03-24 15:22:37,498Z    tap - ERROR Failed to sync endpoint invoices, moving on!
2021-03-24 15:22:37,498Z    tap - CRITICAL Expecting value: line 1 column 1 (char 0)
2021-03-24 15:22:37,499Z    tap - Traceback (most recent call last):
2021-03-24 15:22:37,499Z    tap -   File "tap-env/bin/tap-chargebee", line 33, in <module>
2021-03-24 15:22:37,499Z    tap -     sys.exit(load_entry_point('tap-chargebee==1.0.1', 'console_scripts', 'tap-chargebee')())
2021-03-24 15:22:37,499Z    tap -   File "/code/orchestrator/tap-env/lib/python3.5/site-packages/singer/utils.py", line 192, in wrapped
2021-03-24 15:22:37,499Z    tap -     return fnc(*args, **kwargs)
2021-03-24 15:22:37,499Z    tap -   File "/code/orchestrator/tap-env/lib/python3.5/site-packages/tap_chargebee/__init__.py", line 27, in main
2021-03-24 15:22:37,500Z    tap -     runner.do_sync()
2021-03-24 15:22:37,500Z    tap -   File "/code/orchestrator/tap-env/lib/python3.5/site-packages/tap_framework/__init__.py", line 81, in do_sync
2021-03-24 15:22:37,500Z    tap -     raise e
2021-03-24 15:22:37,500Z    tap -   File "/code/orchestrator/tap-env/lib/python3.5/site-packages/tap_framework/__init__.py", line 71, in do_sync
2021-03-24 15:22:37,500Z    tap -     stream.sync()
2021-03-24 15:22:37,500Z    tap -   File "/code/orchestrator/tap-env/lib/python3.5/site-packages/tap_framework/streams.py", line 142, in sync
2021-03-24 15:22:37,500Z    tap -     return self.sync_data()
2021-03-24 15:22:37,500Z    tap -   File "/code/orchestrator/tap-env/lib/python3.5/site-packages/tap_chargebee/streams/base.py", line 156, in sync_data
2021-03-24 15:22:37,500Z    tap -     params=params)
2021-03-24 15:22:37,500Z    tap -   File "/code/orchestrator/tap-env/lib/python3.5/site-packages/backoff.py", line 286, in retry
2021-03-24 15:22:37,500Z    tap -     ret = target(*args, **kwargs)
2021-03-24 15:22:37,500Z    tap -   File "/code/orchestrator/tap-env/lib/python3.5/site-packages/singer/utils.py", line 62, in wrapper
2021-03-24 15:22:37,500Z    tap -     return func(*args, **kwargs)
2021-03-24 15:22:37,500Z    tap -   File "/code/orchestrator/tap-env/lib/python3.5/site-packages/tap_chargebee/client.py", line 69, in make_request
2021-03-24 15:22:37,500Z    tap -     response_json = response.json()
2021-03-24 15:22:37,500Z    tap -   File "/code/orchestrator/tap-env/lib/python3.5/site-packages/requests/models.py", line 892, in json
2021-03-24 15:22:37,500Z    tap -     return complexjson.loads(self.text, **kwargs)
2021-03-24 15:22:37,500Z    tap -   File "/code/orchestrator/tap-env/lib/python3.5/site-packages/simplejson/__init__.py", line 516, in loads
2021-03-24 15:22:37,500Z    tap -     return _default_decoder.decode(s)
2021-03-24 15:22:37,500Z    tap -   File "/code/orchestrator/tap-env/lib/python3.5/site-packages/simplejson/decoder.py", line 370, in decode
2021-03-24 15:22:37,501Z    tap -     obj, end = self.raw_decode(s)
2021-03-24 15:22:37,501Z    tap -   File "/code/orchestrator/tap-env/lib/python3.5/site-packages/simplejson/decoder.py", line 400, in raw_decode
2021-03-24 15:22:37,501Z    tap -     return self.scan_once(s, idx=_w(s, idx).end())
2021-03-24 15:22:37,501Z    tap - simplejson.scanner.JSONDecodeError: Expecting value: line 1 column 1 (char 0)
2021-03-24 15:22:37,539Z target - INFO Serializing batch with 300 messages for table invoices
2021-03-24 15:22:37,545Z target - INFO Sending batch of 299633 bytes to https://api.stitchdata.com/v2/import/batch
2021-03-24 15:22:37,551Z target - INFO [smart-services] event successfully sent to kafka: com.stitchdata.streamRecordCount [6] at offset None
2021-03-24 15:22:37,551Z target - INFO replicated 300 records from "invoices" endpoint
2021-03-24 15:22:37,842Z target - INFO Requests complete, stopping loop
2021-03-24 15:22:37,899Z   main - INFO Target exited normally with status 0
2021-03-24 15:22:38,330Z   main - INFO [smart-services] event successfully sent to kafka: com.stitchdata.extractionJobFinished [1] at offset None
2021-03-24 15:22:38,331Z   main - INFO No tunnel subprocess to tear down
2021-03-24 15:22:38,331Z   main - INFO Exit status is: Discovery succeeded. Tap failed with code 1 and error message: "Expecting value: line 1 column 1 (char 0)". Target succeeded.
NachoJusticia commented 3 years ago

I'm having same JSONDecodeError problem