Skip to main content

Getting Started

alibabacloudsls Activate Simple Log Service, create a Project in your chosen region, and create a standard Logstore. Use the regional service endpoint, for example https://eu-central-1.log.aliyuncs.com; the SDK adds the project name to the host. A project-prefixed endpoint is also accepted; Odigos removes that prefix to avoid duplicating it. Use the public endpoint when Odigos runs outside Alibaba Cloud. HTTPS verifies the server with system roots. Create a RAM user with log:PostLogStoreLogs permission for this Project and Logstore, and put its AccessKey ID and AccessKey Secret in the destination Secret. Use long-lived RAM AccessKeys; this destination does not configure STS tokens or ECS role authentication. Enable full-text indexing, and optionally field indexes for content, service, host, severityText, traceID, and spanID, in the Logstore’s Search & Analysis index settings. Indexing is required for searchable ingestion and applies to new data. Query * with a time range covering the log timestamps, then filter by service or a unique string in content to verify receipt. The pinned upstream alibabacloud_logservice exporter maps ordinary string and structured log bodies to content; resource attributes to resource (JSON), service, and host; log attributes to attribute (JSON); and scope metadata to otlp.name and otlp.version. Attribute values are stringified. Severity, trace and span IDs, and the original nanosecond timestamp are retained as fields. SLS’s log time has second precision; missing timestamps use the collector’s current time. Empty log bodies are skipped by the upstream exporter. Odigos splits incoming batches to at most 512 records with a one-second timeout. The SDK sends when reaching 512 KiB or 4,096 records (thresholds, not hard byte limits), with a two-second linger, a 100 MiB in-memory producer buffer per destination, LZ4 compression, and up to ten retries with backoff. These are upstream defaults and are not destination options. This buffer is volatile. The exporter acknowledges enqueueing before delivery; final service failures appear as Send to LogService failed warnings and are not returned to the collector as rejected records or OTLP partial success. The upstream exporter also does not flush its producer on collector shutdown. Use destination queries to confirm ingestion and monitor gateway warnings; collector acceptance does not prove persisted data. Oversized or invalid records can reject a batch, and retries can duplicate already accepted records. This named destination supports logs only. Use Alibaba Cloud Managed Service for OpenTelemetry for traces and metrics. Profiles are unsupported. See Alibaba Cloud ingestion setup and the upstream SLS exporter.

Configuring Destination Fields

❌ Traces ❌ Metrics ✅ Logs ❌ Profiles
  • SLS_ENDPOINT string : SLS Endpoint. Use the regional SLS service endpoint. HTTPS is required and is added when the scheme is omitted. A project prefix is removed automatically. Do not include a URL path.
    • This field is required
    • Example: https://eu-central-1.log.aliyuncs.com
  • SLS_PROJECT string : Project.
    • This field is required
  • SLS_LOGSTORE string : Logstore. Create a standard Logstore and enable indexing to search ingested logs.
    • This field is required
  • SLS_ACCESS_KEY_ID string : AccessKey ID. Use a RAM user with log-write permissions for this project and Logstore.
    • This field is required
  • SLS_ACCESS_KEY_SECRET string : AccessKey Secret.
    • This field is required

Adding Destination to Odigos

There are two primary methods for configuring destinations in Odigos:
Using the UI
1
Use the Odigos CLI to access the UI
2
Click on Add Destination, select Alibaba Cloud Simple Log Service and follow the on-screen instructions
Using Kubernetes manifests
1
Save the YAML below to a file (e.g. alibabacloudsls.yaml)
2
Apply the YAML using kubectl