Appearance
Cloud OTLP Integration
Realm exposes an OpenTelemetry Protocol (OTLP) endpoint that OpenTelemetry Collectors, agents, and SDKs can send log records to directly. Each Cloud OTLP input feed gets its own HTTPS endpoint and bearer token, so you can route OTLP logs into Realm without additional middleware.
Note: Cloud OTLP accepts OTLP over HTTP only. gRPC is not supported, so configure your exporter to use OTLP/HTTP (for example, the
otlphttpexporter in the OpenTelemetry Collector).
Prerequisites
- Access to the Realm Security console.
- An OpenTelemetry Collector, agent, or SDK that can export logs over OTLP/HTTP and reach Realm Cloud on port
443.
Create a Source in Realm
- In Realm, go to Sources > Add Source.
- Enter a name for your source.
- Set Product Format to match the logs being forwarded. Cloud OTLP is available for Custom CEF, Custom CSV, Custom JSON, Custom Syslog, and Jenkins OTLP.
- Click Save.
Add a Cloud OTLP Input Feed
- On the Select Transport Method step in the Add Source flow, or from the source page, click Add Input Feed.
- Select Cloud OTLP and give it a name.
- Configure the input feed:
Token:
<your token>(optional — leave empty to have Realm generate one)
TLS Issuer:PublicorRealm Private CA - Click Add. Realm displays the connection details for the new input feed.
Note: Use Public unless your OTLP client requires a private trust chain. Clients connecting to a Public endpoint only need up-to-date system CA certificates.
View Connection Details
- Click
...> View on the Cloud OTLP input feed. - Copy the connection details:
Hostname:
https://<feed-id>.<account-id>.cloud.ingest.realmsec.net
Port:443
Protocol:SSL / TLS - If you selected Realm Private CA, copy the Realm CA pem file and save it to a file on the host running your OTLP client.
- Click
...> Edit on the input feed, then click the eye icon in the Token field to reveal the token value. - Copy the Token.
Important: Treat the token as a secret. Anyone with the hostname and token can send data to this input feed.
Configure Your OpenTelemetry Collector
Add an otlphttp exporter that points to the Cloud OTLP Hostname and sends the Token as a bearer token in the Authorization header. The otlphttp exporter appends /v1/logs to the endpoint automatically.
yaml
exporters:
otlphttp/realm:
endpoint: https://<feed-id>.<account-id>.cloud.ingest.realmsec.net
headers:
Authorization: "Bearer ${env:REALM_OTLP_TOKEN}"
service:
pipelines:
logs:
receivers: [<your receivers>]
processors: [<your processors>]
exporters: [otlphttp/realm]Set the REALM_OTLP_TOKEN environment variable for the Collector process instead of writing the token into the config file.
If the input feed uses Realm Private CA, point the exporter at the saved certificate:
yaml
exporters:
otlphttp/realm:
endpoint: https://<feed-id>.<account-id>.cloud.ingest.realmsec.net
headers:
Authorization: "Bearer ${env:REALM_OTLP_TOKEN}"
tls:
ca_file: /path/to/realm-ca.pemAfter updating the config, reload or restart your OpenTelemetry Collector to apply the changes.
For a complete example using Cloud OTLP, see the Jenkins OTLP guide.
Troubleshooting
Authentication errors (HTTP 401)
- Confirm the
Authorizationheader uses the formatBearer <token>. - Ensure there are no leading or trailing spaces in the token value.
Connection or protocol errors
- Confirm the exporter uses OTLP/HTTP, not gRPC.
- Confirm the endpoint starts with
https://and outbound traffic to port443is allowed.
TLS / certificate errors
- For Public input feeds, ensure the host has up-to-date CA certificates installed.
- For Realm Private CA input feeds, ensure the exporter's
ca_filepoints to the Realm CA pem file copied from the input feed.
Support
If you encounter any issues or require assistance, contact Realm Security support.