Some checks failed
Docs CI / lint-and-preview (push) Has been cancelled
- Implemented PolicyDslValidator with command-line options for strict mode and JSON output. - Created PolicySchemaExporter to generate JSON schemas for policy-related models. - Developed PolicySimulationSmoke tool to validate policy simulations against expected outcomes. - Added project files and necessary dependencies for each tool. - Ensured proper error handling and usage instructions across tools.
36 lines
1.7 KiB
Markdown
36 lines
1.7 KiB
Markdown
# Telemetry Collector Assets
|
||
|
||
These assets provision the default OpenTelemetry Collector instance required by
|
||
`DEVOPS-OBS-50-001`. The collector acts as the secured ingest point for traces,
|
||
metrics, and logs emitted by Stella Ops services.
|
||
|
||
## Contents
|
||
|
||
| File | Purpose |
|
||
| ---- | ------- |
|
||
| `otel-collector-config.yaml` | Baseline collector configuration (mutual TLS, OTLP receivers, Prometheus exporter). |
|
||
| `storage/prometheus.yaml` | Prometheus scrape configuration tuned for the collector and service tenants. |
|
||
| `storage/tempo.yaml` | Tempo configuration with multitenancy, WAL, and compaction settings. |
|
||
| `storage/loki.yaml` | Loki configuration enabling multitenant log ingestion with retention policies. |
|
||
| `storage/tenants/*.yaml` | Per-tenant overrides for Tempo and Loki rate/retention controls. |
|
||
|
||
## Development workflow
|
||
|
||
1. Generate development certificates (collector + client) using
|
||
`ops/devops/telemetry/generate_dev_tls.sh`.
|
||
2. Launch the collector via `docker compose -f docker-compose.telemetry.yaml up`.
|
||
3. Launch the storage backends (Prometheus, Tempo, Loki) via
|
||
`docker compose -f docker-compose.telemetry-storage.yaml up`.
|
||
4. Run the smoke test: `python ops/devops/telemetry/smoke_otel_collector.py`.
|
||
5. Explore the storage configuration (`storage/README.md`) to tune retention/limits.
|
||
|
||
The smoke test sends OTLP traffic over TLS and asserts the collector accepted
|
||
traces, metrics, and logs by scraping the Prometheus metrics endpoint.
|
||
|
||
## Kubernetes
|
||
|
||
The Helm chart consumes the same configuration (see `values.yaml`). Provide TLS
|
||
material via a secret referenced by `telemetry.collector.tls.secretName`,
|
||
containing `ca.crt`, `tls.crt`, and `tls.key`. Client certificates are required
|
||
for ingestion and should be issued by the same CA.
|