Authorization: Bearer <jwt> (or an API token — see
Security).
Supported protocols
| Protocol | Endpoint | Drop-in for |
|---|---|---|
| OTLP gRPC | :5082 | OpenTelemetry SDK / Collector |
| OTLP HTTP | POST /api/v1/{logs,metrics,traces} | OTel HTTP exporter |
| Prometheus remote_write | POST /api/v1/prometheus/api/v1/write | Prometheus / VictoriaMetrics |
Elasticsearch _bulk | POST /api/v1/_bulk | Filebeat, Vector ES sink, Logstash |
| Loki push | POST /api/v1/loki/api/v1/push | Promtail, Vector Loki sink |
| Syslog UDP/TCP | [syslog].udp_bind / tcp_bind | rsyslog, syslog-ng |
| Kinesis Firehose | POST /api/v1/_kinesis_firehose | AWS Firehose |
| Cloudflare Logpush | POST /api/v1/_cloudflare | Cloudflare Logpush |
| Heroku log drain | POST /api/v1/_heroku | Heroku |
| Native HTTP JSON | POST /api/v1/ingest/{type}/:stream | curl / app SDK |
Native HTTP JSON
The simplest path. POST an array of records toingest/{logs,metrics,traces}/{stream}. Timestamps
are microseconds since the Unix epoch, in the _timestamp field.
OpenTelemetry
- OTLP HTTP
- OTLP gRPC
Point your OTel HTTP exporter at MoleSignal:Logs, metrics, and traces post to
/api/v1/logs, /api/v1/metrics, and /api/v1/traces.Prometheus remote_write
Add MoleSignal as a remote write target inprometheus.yml:
Loki and Elasticsearch
Pipeline functions
You can transform events on the ingest hot path with pipeline functions — reusable transforms attached to a pipeline step. Two languages are supported:- VRL — always available. Compiled per
(function_id, updated_at)with thevrl::compilerstdlib (del,parse_json,to_int,match,encrypt/decrypt, …). - JavaScript — opt-in, built on
deno_core(V8). Disabled by default; enabling it requires both a build feature (--features molesignal-bootstrap/js-runtime) and the TOML gate[functions] js_runtime_enabled = true.