Overview
When a Source Collector does not run as expected, the cause is not always obvious. A missed-run notification can mean the collector never started, that it started but encountered an error, or even that it ran successfully but found no data to collect.
This guide helps you identify the problem, investigate the cause, and decide what to do next.
Note: This guide covers troubleshooting for all hosting types. Some investigation steps are only available for Cloud-hosted collectors.
Refer to the section below, What You Can See Depends on How Your Collector Is Hosted for more details.
Escalation
Not every issue requires contacting Varibill. Most problems can be investigated and resolved by following the steps in this guide. When they cannot, use the following escalation path:
- Investigate the issue yourself using the steps in this guide. Many common problems, such as expired credentials, missing data at the source, configuration errors etc. can be resolved directly.
- Contact your internal technical team if the issue involves infrastructure you manage, such as a self-hosted collector server, network connectivity, firewall rules, or access to a source system. Your internal technical team has direct access to servers and systems that Varibill cannot reach.
- Contact Varibill if you have ruled out all of the above. See When to Contact Varibill Support for specific scenarios.
Understanding Missed Runs vs Failures
A “missed run” and a “failed run” are not the same thing. Understanding the difference will save you time when investigating.
Missed Run
A missed run means that no data batch was recorded within the expected schedule window. Varibill checks your collector’s CRON schedule against the date of its most recent batch. If a batch should have been created but was not, the run is counted as missed.
A missed run can happen for several reasons:
- The collector never started (infrastructure or scheduling issue)
- The collector started but encountered an error before submitting data
- The collector ran successfully but found no records to collect
That last point is important: a collector that runs and collects zero records does not create a batch. From Varibill’s perspective, this looks identical to a run that never happened. See Scenario B: Collector Ran Successfully but No Data Was Collected.
Failed Run
A failed run means the collector started but could not
complete. This produces a Failed execution status (visible for Cloud-hosted collectors) and usually leaves behind console logs with an error message explaining what went wrong.
When a Missed Run Resolves
When a collector runs successfully and submits data, its missed-run counter resets to zero automatically. You will not receive a separate “recovered” notification. The missed-run emails simply stop.
What You Can See Depends on How Your Collector Is Hosted
Not all collectors provide the same level of diagnostic visibility in the Varibill UI. The information available to you depends on where the collector runs.
| What You Can See | Cloud-Hosted | Self-Hosted |
|---|---|---|
| Dashboard (missed runs, record counts) | Yes | Yes |
| Batch history | Yes | Yes |
| Source Data records | Yes | Yes |
| Job Execution history (status, duration) | Yes | No |
| Console logs (full run output) | Yes | No |
| API response logs | Yes | No |
| Pending upload files (.rdy) | Yes | No |
| Run / Stop buttons | Yes | No |
Cloud-hosted collectors give you the most visibility. Everything runs in Varibill’s infrastructure, so execution history, logs, and data files are all accessible from the Source Collector Editor.
Self-hosted collectors run on your own servers. Varibill can see batch results and record counts, but execution history and log files are only available on the host machine itself. If you cannot access the server directly, your internal technical team should be your first point of contact. They will have access to the infrastructure where the collector runs.
Note: If you are not sure how your collector is hosted, open it in the Source Collector Editor. The Hosting Provider field shows either VaribillCloud or SelfHosted.
/3400%23Troubleshooting/images/SourceCollectorHostingOptionsVBUI.png)
Scenario A: Collector Failed to Run or Encountered an Error
Use this section if:
- You received a missed-run notification email
- The Dashboard shows the collector under “Failed Collectors” with a missed run count
- You suspect the collector did not run at all, or that it started but failed to execute or collect data
Step 1: Check the Dashboard
- Go to the Dashboard (home page).
- Select the Failed Collectors tab.
- Find your collector in the list and note the Missed Runs count.
/3400%23Troubleshooting/images/FailedCollectorsTabWithMissedRunsCount.png)
A missed runs count above zero means Varibill expected data from one or more scheduled runs but did not receive it.
Step 2: Check Job Execution History (Varibill Cloud Only)
- Open the collector in the Source Collector Editor.
- Scroll to the Job Execution section.
- Look at the most recent executions:
| What You See | What It Means |
|---|---|
| Failed status | The collector started but encountered an error. Proceed to Step 3 to read the logs. |
| Succeeded status around the expected time | The collector ran but may not have found data. See Scenario B. |
| No execution for the expected time period | The collector never started. This is typically an infrastructure issue. Skip to When to Contact Varibill Support. |
| Stopped status | The collector was manually stopped before it could finish. |
Note: Self-hosted collectors do not show job execution history in Varibill. If your collector is self-hosted, skip to Step 3.
Step 3: Check Console Logs (Varibill Cloud Only)
Console logs capture the full output from the collector’s run, including error messages.
- In the Source Collector Editor, go to Job Execution Files.
- Navigate to the console/ directory.
- Open the log file that corresponds to the failed run’s time period.
- Look for lines beginning with
[ERROR]. These indicate what went wrong.
See Common Errors and What They Mean for help interpreting specific error messages.
Step 3 (Self-Hosted): Check Logs on Your Host Machine
If your collector is self-hosted, log files exist on the machine where the collector runs, not in Varibill.
- Console output: Check the Source Collector Server logs, or run
docker logsfor the relevant container. - API response logs: Check the
log/directory within the collector’s working folder. - Pending data files: Check the
unrated/orrated/directory for.rdyfiles (see Step 5).
If you do not have access to the server, contact your internal technical team. They can check the logs on your behalf and report back on what they find.
Step 4: Check API Response Logs (Varibill Cloud Only)
API response logs record the result of each data submission to Varibill.
- In Job Execution Files, navigate to the log/ directory.
- Open the
.jsonfiles to see the API response for each submission. - Look for non-success status codes (anything other than
200or201).
Step 5: Check for Pending Uploads
When a collector successfully collects data but fails to upload it, the data is saved as .rdy files. These files are automatically retried on the next scheduled run.
Varibill Cloud: In Job Execution Files, navigate to the unrated/ or rated/ directory and look for files ending in .rdy.
Self-hosted: Check the same directories on the host machine.
If .rdy files are present, the data has been collected but not yet delivered to Varibill. In most cases, the next scheduled run will pick them up and complete the upload automatically. No manual action is needed.
Step 6: Check Batch History
- In the Source Collector Editor, scroll to the Batches section.
- Look for batches with an Unsuccessful status. This means the data was submitted but failed validation.
- Review the Feedback column for details on what went wrong during validation.
A batch status of Successful means the data was received and validated. Unsuccessful usually indicates a data quality issue rather than a collector failure.
Scenario B: Collector Ran Successfully but No Data Was Collected
Use this section if:
- The Job Execution history shows a Succeeded status, but no new batch appeared
- The console logs show a clean start-to-finish run with no errors
- The Dashboard still counts a missed run
This is one of the most common support scenarios. The collector ran as expected, but there was simply no new data to collect from the source system.
Why This Happens
Source Collectors retrieve data from external systems (APIs, databases, cloud platforms). If the source system has no new data for the collection period, the collector completes normally but does not create a batch in Varibill. Because there is no batch, the system records it as a missed run.
Common reasons for no data at the source:
- The external service had no new usage, transactions, or records for the period
- A change was made in the source system that stopped data from being generated (for example, a subscription was cancelled, an integration was paused, or API permissions were changed)
- The source system’s data retention has expired and older records are no longer available
What to Check
- Verify the source system directly. Log in to the external platform or service your collector retrieves data from and confirm that data exists for the expected period.
- Check whether anything changed. Was a subscription cancelled? Were API credentials rotated? Was a service paused?
- Review Source Data. Go to Billing Data > Source Data and filter by your collector and date range. If no records appear for the expected period, the collector did not find data to submit.
What to Do
If the source system genuinely has no data, no action is needed. The collector is working correctly. The missed-run count will reset automatically when the next run successfully collects and submits data.
If you believe data should exist but the collector is not finding it, check whether:
- The collector’s connection credentials are still valid
- The source system’s API or data format has changed
- Any filters or parameters on the collector need updating
If the issue involves access to the source system or changes on the vendor’s side, contact your internal team or the source system provider. If you have ruled out source-side issues and the collector still appears to be missing data, contact Varibill Support with the collector name and the date range in question.
Common Errors and What They Mean
These are errors you may encounter in console logs or as feedback on unsuccessful batches.
Connection and Authentication Errors
| Error Message | What It Means | What to Do |
|---|---|---|
Failed to establish SSH session. | The collector could not connect to the source system via SSH. | Verify the host address, credentials, firewall rules, and that the source system is reachable. |
Failed to retrieve access token. Check credentials and permissions. | OAuth authentication to the source system failed. | Verify the client ID, client secret, and tenant ID. Confirm the required API permissions are still granted. |
RouterUser, RouterPassword, and RouterHost are required... | Required connection parameters are missing from the collector configuration. | Open the Source Collector Editor and fill in the missing fields under Runtime. |
Data Submission Errors
| Error Message | What It Means | What to Do |
|---|---|---|
Post failed for '<filename>' with HTTP status 401 | The collector’s credentials for submitting data to Varibill are invalid. | Check the Source Key and Source Secret in the Source Collector Editor. |
Post failed for '<filename>' with HTTP status 429 | The collector exceeded the submission rate limit. | Reduce the collection frequency or batch size. Varibill allows 1,400 submissions per rolling 5-minute window. |
File '<name>' has an empty or null payload. Review the file and ensure it contains valid JSON data. | The collector created a data file but it was empty or contained invalid data. | Check the source system to confirm data is available, and verify the collector is producing valid JSON output. |
This tenant's database is currently under maintenance. | Varibill platform maintenance is in progress. | Wait for the maintenance window to end and the collector will retry on its next scheduled run. |
Configuration Errors
| Error Message | What It Means | What to Do |
|---|---|---|
Invalid CRON expression: <details> | The schedule expression is not valid. | Correct the CRON expression in the Source Collector Editor. |
Safe Actions You Can Take
| Action | Safe? | Notes |
|---|---|---|
| Review console logs and API response files | Yes | Read-only inspection, no risk. |
| Correct collector credentials or parameters | Yes | Update the fields and save. |
| Adjust the CRON schedule | Yes | Changing the schedule will not affect existing data. |
| Run the collector manually (Cloud only) | Use care | A manual run collects the data that is currently available in the source system. Check for .rdy files first. If pending files are present, the next scheduled run may resolve the issue on its own. |
| Delete unbilled source data | Caution | This is irreversible. Only do this if you have confirmed the data is incorrect. |
Recovery Limitations
It is important to understand what can and cannot be recovered after a missed or failed run:
- Historical data recovery depends on the collector type. Most collectors only collect data that is currently available in the source system. However, Historically Capable collectors can retrieve past or date-range-based data directly from the source system. If your collector is Historically Capable, a manual run may be able to recover missed data without additional coordination.
- Source system data retention. If the source system has a retention policy and the data has been purged, it cannot be recovered through Varibill.
- Pending uploads resolve automatically. If
.rdyfiles are present from a previous run, the next scheduled run will attempt to upload them.
When to Contact Varibill Support
Contact Varibill Support if any of the following apply:
| Situation | Why |
|---|---|
| No execution exists for a scheduled Cloud run | The collector never started. This is an infrastructure issue that cannot be diagnosed from the Varibill UI. |
Repeated Failed executions with no clear error in the logs | May require investigation of the hosting environment. |
| Repeated HTTP 500 errors in the API response logs | Indicates a platform-side issue. |
| You need to recover data from a missed period and your collector is not Historically Capable | May require direct coordination with the source system provider. Historically Capable collectors can retrieve past data directly. |
| Self-hosted collector is not running and you cannot access the host server | Contact your internal technical team first. They manage the server. If the issue persists after their investigation, contact Varibill Support. |
When contacting Support, include:
- The Source Collector name
- The date and time of the missed or failed run
- Any error messages from the console logs (screenshot or copy-paste)
- Whether the collector is Cloud-hosted or Self-hosted
Batch Status Reference
When reviewing Batch History, the following statuses indicate where data is in the processing pipeline:
| Status | Meaning |
|---|---|
| Pending | Data has been received and is awaiting validation. |
| Validated | Data has passed validation checks. |
| Successful | Data has been fully processed and is available for billing. |
| Unsuccessful | Data was received but failed one or more validation checks. Review the Feedback column for details. |
Related Articles
Was this article helpful?
That’s Great!
Thank you for your feedback
Sorry! We couldn't be helpful
Thank you for your feedback
Feedback sent
We appreciate your effort and will try to fix the article