Skip to content

Honeybadger event reference

View Markdown
Events Honeybadger itself adds to your project's Insights data: error notices, check-in reports, deploys, and uptime site state changes. Each entry lists the event's fields with their types, and links to its raw JSON Schema.
4 events emitted by honeybadger.

check_in

A heartbeat or report from a scheduled job or cron monitor. The state field shows whether the run succeeded, failed, or reported its status.

FieldTypeDescription
event_typestringAllowed value: check_in.
check_in_idstringStable identifier for the monitored check-in / job.
statestringReported state of the run. reporting means the job sent a heartbeat for the scheduled window. missing means the window expired without a heartbeat. paused means the monitor is paused. Allowed values: reporting, missing, paused.
payloadobjectOptional report sent with advanced check-ins. The fields listed below are common, but the job can send other fields too.
payload.statusstringJob outcome label. "success" appears as a check icon in the UI. Any other value is treated as a failure label.
payload.durationnumberHow long the job took, in milliseconds.
payload.exit_codeintegerProcess exit code reported by the job. 0 conventionally means success.
payload.stdoutstringCaptured stdout from the job run.
payload.stderrstringCaptured stderr from the job run.
payload.*anyAdditional caller-defined keys.
Example
{
"event_type": "check_in",
"check_in_id": "wNgxJv",
"state": "reporting",
"payload": {
"status": "success",
"duration": 4523,
"exit_code": 0,
"stdout": "Processed 1240 records",
"stderr": ""
}
}

deploy

A code deploy reported to Honeybadger. Each deploy creates one event per environment. There is no separate started or finished event.

FieldTypeDescription
event_typestringAllowed value: deploy.
environmentstringTarget environment of the deploy, e.g. "production", "staging".
revisionstringSource revision (commit SHA) being deployed.
repositorystringRepository URL, when reported.
local_usernamestringUsername on the deploying machine.
commitsarray<object>Commits included in this deploy when reported. Omitted on deploys without a commit list.
Example
{
"event_type": "deploy",
"environment": "production",
"revision": "a3f8c12d9b4e6f7a8c01d2e3f4a5b6c7d8e9f0a1",
"repository": "https://github.com/example/myapp",
"local_username": "deploy",
"commits": [
{
"revision": "a3f8c12d9b4e6f7a8c01d2e3f4a5b6c7d8e9f0a1",
"message": "Fix checkout total calculation",
"author": "Jane Developer"
}
]
}

notice

An unhandled error captured by a Honeybadger client. Notices with the same root cause are grouped under one fault_id.

FieldTypeDescription
event_typestringAllowed value: notice.
uuidstringStable per-notice token (use to look up a specific notice in the UI).
ulidstringULID for the notice. It is sortable and encodes the receive timestamp.
fault_idintegerAggregated error group ID. Each fault_id groups notices that share a root cause.
project_idintegerProject the notice belongs to.
klassstringError class name, e.g. "NoMethodError", "ActiveRecord::RecordNotFound".
messagestringError message text from the exception.
filestringTop-frame source file from the backtrace.
hostnamestringHostname of the server that reported the error.
environmentstringDeploy environment, e.g. "production", "staging".
revisionstringSource revision (commit SHA) the app was running at.
userstringResolved from the project's user-search field (typically email or user_id).
request_idstringPer-request correlation id.
tagsarray<string>Tags applied to the notice.
requestobjectHTTP request metadata from the error context.
request.urlstring
request.refererstring
request.hoststring
request.request_methodstring
request.remote_addrstring
user_agentobjectParsed user-agent from the request.
user_agent.browserobject
user_agent.browser.namestring
user_agent.browser.majorstring
user_agent.browser.versionstring
user_agent.osobject
user_agent.os.namestring
user_agent.os.versionstring
user_agent.deviceobject
user_agent.device.modelstring
user_agent.botboolean
contextobjectContext data your application set when the error was reported, such as values from Honeybadger.context. Keys are whatever your code sends. Common examples include context.user_email, context.user_id, and context.username.
context.*anyAdditional caller-defined keys.
sessionobjectThe HTTP session at the time of the error. Keys are whatever your application stores in the session.
session.*anyAdditional caller-defined keys.
paramsobjectThe HTTP request parameters at the time of the error. Keys depend on the request.
params.*anyAdditional caller-defined keys.
Example
{
"event_type": "notice",
"uuid": "3e6c9a1d-7f2b-4e8a-b5c3-9d0e1f2a3b4c",
"ulid": "01JXF7Q2M3N4P5R6S7T8V9W0XA",
"fault_id": 84512937,
"project_id": 12345,
"klass": "ActiveRecord::RecordNotFound",
"message": "Couldn't find User with 'id'=123",
"file": "app/controllers/users_controller.rb",
"hostname": "web-1.example.com",
"environment": "production",
"revision": "a3f8c12d9b4e6f7a8c01d2e3f4a5b6c7d8e9f0a1",
"user": "user@example.com",
"request_id": "1f9f6f1a-2b3c-4d5e-8f6a-7b8c9d0e1f2a",
"tags": [
"billing",
"critical"
],
"request": {
"url": "https://www.example.com/users/123",
"referer": "https://www.example.com/users",
"host": "www.example.com",
"request_method": "GET",
"remote_addr": "203.0.113.42"
},
"user_agent": {
"browser": {
"name": "Chrome",
"major": "126",
"version": "126.0.0.0"
},
"os": {
"name": "Mac OS X",
"version": "10.15.7"
},
"device": {
"model": "Mac"
},
"bot": false
},
"context": {
"user_id": 123,
"user_email": "user@example.com",
"plan": "pro"
},
"session": {
"session_id": "9d0e1f2a3b4c5d6e",
"cart_items": 2
},
"params": {
"controller": "users",
"action": "show",
"id": "123"
}
}

site

A snapshot of an uptime-monitored site's configuration. Honeybadger records this when a site is created or its config changes. Probe results use event_type "uptime_check" and include duration, location, site.id, site.name, and response.status_code.

FieldTypeDescription
event_typestringAllowed value: site.
idintegerSite DB id (matches the site.id nested key on probe events).
namestringDisplay name of the site (matches site.name::str on probe events).
urlstringTarget URL being monitored.
statestringLast observed reachability state of the site. Allowed values: up, down.
Example
{
"event_type": "site",
"id": 67890,
"name": "Marketing site",
"url": "https://www.example.com",
"state": "up"
}