Before sending process monitor events to AppSignal, you must first create a process monitor in AppSignal.
You can send process monitor events to AppSignal by performing HTTP POST requests to the AppSignal API, using any HTTP client. The examples in this page provide a sample cURL command, as well as the raw HTTP method and URL to use with any HTTP client of your choice.
In the examples below, replace YOUR-APP-LEVEL-API-KEY with the AppSignal app-level push API key for your app, which can be found in your application’s “Push & Deploy” settings, and YOUR-PROCESS-MONITOR-IDENTIFIER with the identifier of the process monitor you wish to send events to.
The Process Monitoring API still uses check_ins in endpoint URLs for
compatibility with existing integrations.
Sending cron process monitor events
Cron process monitors are used to monitor the execution of scheduled jobs, such as cron jobs. AppSignal will expect to receive a finish cron process monitor event according to its configured schedule, and will notify you if no finish cron process monitor event is received within its configured maximum duration.
Additionally, you can send start cron process monitor events to AppSignal to notify that a cron process monitor event has started, allowing you to measure the duration of your cron jobs.
Finish cron process monitor
To notify AppSignal that a cron job has finished successfully, send a POST request to the AppSignal API with the following URL query parameters:
curl -D - -X POST -G 'https://appsignal-endpoint.net/check_ins/cron' \
-d 'api_key=YOUR-APP-LEVEL-API-KEY' \
-d 'identifier=YOUR-PROCESS-MONITOR-IDENTIFIER'
AppSignal will notify you if no finish cron process monitor event is received within the cron process monitor’s configured maximum duration.
Start cron process monitor
Sending a start cron process monitor event is entirely optional. Doing so allows you to measure the duration of your cron jobs.
To notify AppSignal that a cron job has started, send a POST request to the AppSignal API with the following URL query parameters:
curl -D - -X POST -G 'https://appsignal-endpoint.net/check_ins/cron' \
-d 'api_key=YOUR-APP-LEVEL-API-KEY' \
-d 'identifier=YOUR-PROCESS-MONITOR-IDENTIFIER' \
-d 'kind=start'
Sending a digest
When sending a start cron process monitor, we recommend sending a digest for both the start and finish events. The digest is an arbitrary value that is used to correlate the start and finish cron process monitor events. It should be the same for both the start and finish events, and it should be unique for each pair of start and finish events.
Sending a digest is optional, but it is highly recommended when sending a start cron process monitor event, as it ensures that the start and finish events are correlated correctly.
curl -D - -X POST -G 'https://appsignal-endpoint.net/check_ins/cron' \
... \
-d 'digest=abc123'
Sending heartbeat process monitor events
Heartbeat process monitors are used to monitor the uptime of a process that should run continuously, such as a server application or a background job processor. AppSignal will expect to receive heartbeat process monitor events continuously, and will notify you if no heartbeat process monitor event is received within its configured maximum duration.
To send a heartbeat process monitor event to AppSignal, send a POST request to the AppSignal API with the following URL query parameters:
curl -D - -X POST -G 'https://appsignal-endpoint.net/check_ins/heartbeats' \
-d 'api_key=YOUR-APP-LEVEL-API-KEY' \
-d 'identifier=YOUR-PROCESS-MONITOR-IDENTIFIER'