Use Settings to configure delivery, Routing to select events, Logs to inspect delivery history, and Help for this guide. Routing requires Tier 1; Tier 2 adds request rules. Log visibility, payload previews, and deletion can be delegated separately with Tier 2 role permissions.
Send signals to Honeycomb for observability events.
Honeycomb is a premium SignalPress service. The active license must include service_honeycomb or *.
Hub service ID: honeycomb. Index: Integrations Overview. Target from PHP: Service Targeting.
Get the ingest API key
- Sign in to Honeycomb and note your region from the browser URL (
ui.honeycomb.iois US,ui.eu1.honeycomb.iois EU). - Open your environment settings and go to API Keys.
- Create an Ingest API key (recommended). A Configuration key also works if it has Send Events permission.
- Copy the key immediately.
- In SignalPress, activate Honeycomb, paste the key, set a Dataset (for example
signalpress), and choose the matching Region. - Set a Project name, click Save changes, enable the service if needed, and save again.
- Click Send test signal.
Do not use a key from the wrong region. A US key sent to the EU API returns unauthorized.
- [Manage API keys](https://docs.honeycomb.io/configure/environments/manage-api-keys/)
- [Events API](https://docs.honeycomb.io/api/tag/Events/)
Test the connection
- Open Honeycomb and select the dataset you configured (it appears after the first accepted event).
- In SignalPress, click Send test signal.
- Query for
name = signalpress_testormessage contains SignalPress.
Send a signal
PHP
sp_capture( 'checkout_completed', [ 'message' => 'Checkout completed.', 'level' => 'info', 'order_id' => 123, 'total' => 49.95, ], [ 'source' => 'checkout', 'services' => [ 'honeycomb' ], ] );
Honeycomb receives a flat event with the SignalPress event name, message, level, project, environment, source, site URL, version, and scalar payload fields. Nested values are JSON-encoded strings.
The signalpress/honeycomb/payload filter can adjust the event JSON before delivery.
Troubleshooting
- A disabled test button means Ingest API Key, Dataset, Region, or Project has not been saved.
- HTTP
401or403usually means the key is wrong, lacks Send Events, or the region does not match your UI URL. - Successful ingestion returns a
2xxresponse (commonly200or202). - If the test succeeds but nothing appears, confirm you are viewing the same dataset and region.
What to read next
- Integrations Overview — browse and activate services
- Your First Connection Test — send a test signal and read the log
- Advanced Event Routing — per-service event filters
- Connection Tests and Delivery Log — interpret delivery results
- Service Targeting — limit destinations from PHP