Add OpenTelemetry observability with local JSONL traces (#347)
Co-authored-by: 0xallam <ahmed39652003@gmail.com>
This commit is contained in:
55
tests/config/test_config_telemetry.py
Normal file
55
tests/config/test_config_telemetry.py
Normal file
@@ -0,0 +1,55 @@
|
||||
import json
|
||||
|
||||
from strix.config.config import Config
|
||||
|
||||
|
||||
def test_traceloop_vars_are_tracked() -> None:
|
||||
tracked = Config.tracked_vars()
|
||||
|
||||
assert "STRIX_OTEL_TELEMETRY" in tracked
|
||||
assert "STRIX_POSTHOG_TELEMETRY" in tracked
|
||||
assert "TRACELOOP_BASE_URL" in tracked
|
||||
assert "TRACELOOP_API_KEY" in tracked
|
||||
assert "TRACELOOP_HEADERS" in tracked
|
||||
|
||||
|
||||
def test_apply_saved_uses_saved_traceloop_vars(monkeypatch, tmp_path) -> None:
|
||||
config_path = tmp_path / "cli-config.json"
|
||||
config_path.write_text(
|
||||
json.dumps(
|
||||
{
|
||||
"env": {
|
||||
"TRACELOOP_BASE_URL": "https://otel.example.com",
|
||||
"TRACELOOP_API_KEY": "api-key",
|
||||
"TRACELOOP_HEADERS": "x-test=value",
|
||||
}
|
||||
}
|
||||
),
|
||||
encoding="utf-8",
|
||||
)
|
||||
|
||||
monkeypatch.setattr(Config, "_config_file_override", config_path)
|
||||
monkeypatch.delenv("TRACELOOP_BASE_URL", raising=False)
|
||||
monkeypatch.delenv("TRACELOOP_API_KEY", raising=False)
|
||||
monkeypatch.delenv("TRACELOOP_HEADERS", raising=False)
|
||||
|
||||
applied = Config.apply_saved()
|
||||
|
||||
assert applied["TRACELOOP_BASE_URL"] == "https://otel.example.com"
|
||||
assert applied["TRACELOOP_API_KEY"] == "api-key"
|
||||
assert applied["TRACELOOP_HEADERS"] == "x-test=value"
|
||||
|
||||
|
||||
def test_apply_saved_respects_existing_env_traceloop_vars(monkeypatch, tmp_path) -> None:
|
||||
config_path = tmp_path / "cli-config.json"
|
||||
config_path.write_text(
|
||||
json.dumps({"env": {"TRACELOOP_BASE_URL": "https://otel.example.com"}}),
|
||||
encoding="utf-8",
|
||||
)
|
||||
|
||||
monkeypatch.setattr(Config, "_config_file_override", config_path)
|
||||
monkeypatch.setenv("TRACELOOP_BASE_URL", "https://env.example.com")
|
||||
|
||||
applied = Config.apply_saved(force=False)
|
||||
|
||||
assert "TRACELOOP_BASE_URL" not in applied
|
||||
Reference in New Issue
Block a user