OTEL Collector
Send OTLP/HTTP logs and metrics to an OpenTelemetry collector or compatible vendor pipeline.
Reporting
Realtime reporting
Choose the built-in sink page that matches the observability stack your team already uses. Each tab below opens a dedicated page instead of swapping content in place.
When To Use OTEL Collector
Use OTEL Collector when your organization standardizes on OpenTelemetry collector pipelines or a vendor backend that already accepts OTLP/HTTP.
What LoadStrike Sends
OtelCollectorReportingSink sends OTLP/HTTP logs and metrics through the configured endpoint. Final metric snapshots and run-result metadata travel through the same collector flow.
Configuration Surface
Configure the sink in code or through LoadStrike:ReportingSinks:OtelCollector. Common options include BaseUrl, Headers, and StaticResourceAttributes.
Downloads
OTEL Collector setup is supported through the downloadable JSON infra-config template and the shared observability asset guide.
OTEL Collector realtime reporting
Use OtelCollectorReportingSink when you want OTLP/HTTP logs and metrics sent through an OpenTelemetry collector pipeline.
Switch between C#, Java, Python, TypeScript, and JavaScript to see the native SDK shape for this sample.
Licensing note: every runnable sample requires a valid runner key via WithRunnerKey("...") or config key LoadStrike:RunnerKey.
HTML reports include an icon-only Light/Dark theme toggle fixed at the top-right. Default report theme is Light.
OTEL Collector Sink
var otelSink = new OtelCollectorReportingSink(new OtelCollectorReportingSinkOptions
{
BaseUrl = "https://otel.example.com",
Headers =
{
["Authorization"] = "Bearer otel-token"
},
StaticResourceAttributes =
{
["deployment.environment"] = "production-like",
["service.name"] = "payments"
}
});
LoadStrikeRunner.RegisterScenarios(scenario)
.WithReportingSinks(otelSink)
.WithRunnerKey("rkl_your_local_runner_key")
.Run();
import com.loadstrike.runtime.LoadStrikeRunner;
import com.loadstrike.runtime.LoadStrikeSinks;
var options = new LoadStrikeSinks.OtelCollectorSinkOptions();
options.baseUrl = "https://otel.example.com";
options.headers.put("Authorization", "Bearer otel-token");
options.staticResourceAttributes.put("deployment.environment", "production-like");
options.staticResourceAttributes.put("service.name", "payments");
var sink = new LoadStrikeSinks.OtelCollectorReportingSink(options);
LoadStrikeRunner.registerScenarios(scenario)
.withReportingSinks(sink)
.withRunnerKey("rkl_your_local_runner_key")
.run();
from loadstrike_sdk import LoadStrikeRunner, OtelCollectorReportingSink
sink = OtelCollectorReportingSink(
base_url="https://otel.example.com",
headers={
"Authorization": "Bearer otel-token",
},
static_resource_attributes={
"deployment.environment": "production-like",
"service.name": "payments",
},
)
LoadStrikeRunner.register_scenarios(scenario) \
.with_reporting_sinks(sink) \
.with_runner_key("rkl_your_local_runner_key") \
.run()
import {
LoadStrikeRunner,
OtelCollectorReportingSink,
OtelCollectorReportingSinkOptions
} from "@loadstrike/loadstrike-sdk";
const sink = new OtelCollectorReportingSink(new OtelCollectorReportingSinkOptions({
BaseUrl: "https://otel.example.com",
Headers: {
Authorization: "Bearer otel-token"
},
StaticResourceAttributes: {
"deployment.environment": "production-like",
"service.name": "payments"
}
}));
await LoadStrikeRunner
.registerScenarios(scenario)
.withReportingSinks(sink)
.withRunnerKey("rkl_your_local_runner_key")
.run();
const {
LoadStrikeRunner,
OtelCollectorReportingSink,
OtelCollectorReportingSinkOptions
} = require("@loadstrike/loadstrike-sdk");
const sink = new OtelCollectorReportingSink(new OtelCollectorReportingSinkOptions({
BaseUrl: "https://otel.example.com",
Headers: {
Authorization: "Bearer otel-token"
},
StaticResourceAttributes: {
"deployment.environment": "production-like",
"service.name": "payments"
}
}));
await LoadStrikeRunner
.registerScenarios(scenario)
.withReportingSinks(sink)
.withRunnerKey("rkl_your_local_runner_key")
.run();
OTEL Collector setup checklist
LoadStrike:ReportingSinks:OtelCollector
BaseUrl, Headers, and StaticResourceAttributes.
Teams standardizing on an OpenTelemetry collector or vendor pipeline that already accepts OTLP/HTTP.
Final metric snapshots and run-result metadata are sent through the same OTLP/HTTP sink configuration.
{
"LoadStrike": {
"ReportingSinks": {
"OtelCollector": {
"BaseUrl": "https://otel.example.com",
"Headers": {
"Authorization": "Bearer otel-token"
}
}
}
}
}
Downloads and templates
Use the OTEL Collector template when you want to bind sink settings from infra config.
OTEL Collector template JSON
Ready-to-edit infra-config template for OtelCollectorReportingSink.
Download fileObservability asset guide
Combined guide for sink templates and Grafana starter assets.
Download file