1#![allow(non_upper_case_globals)]
7
8mod _lock;
9pub mod backpressure;
10pub mod cardinality;
11pub mod classification;
12mod config;
13pub mod consent;
14pub mod context;
15mod errors;
16pub mod fingerprint;
17mod harden;
18pub mod health;
19mod jcs;
20pub mod logger;
21pub mod metrics;
22pub mod otel;
23pub mod pii;
24mod policies;
25pub mod propagation;
26pub mod receipts;
27pub mod resilience;
28mod runtime;
29mod runtime_facade;
30pub mod sampling;
31pub mod schema;
32mod secret_patterns_generated;
33mod setup;
34pub mod slo;
35pub mod testing;
36pub mod tracer;
37pub mod tracing;
38
39pub use backpressure::{get_queue_policy, release, set_queue_policy, try_acquire, QueuePolicy};
40pub use cardinality::{
41 clear_cardinality_limits, get_cardinality_limits, guard_attributes, register_cardinality_limit,
42 CardinalityLimit,
43};
44pub use classification::{
45 classify_key, clear_classification_rules, get_classification_policy,
46 register_classification_rule, register_classification_rules, set_classification_policy,
47 ClassificationPolicy, ClassificationRule, DataClass,
48};
49pub use config::{
50 redact_config, BackpressureConfig, EventSchemaConfig, ExporterPolicyConfig, LoggingConfig,
51 MetricsConfig, RuntimeOverrides, SLOConfig, SamplingConfig, SecurityConfig, TelemetryConfig,
52 TracingConfig,
53};
54pub use consent::{
55 get_consent_level, reset_consent_for_tests, set_consent_level, should_allow, ConsentLevel,
56};
57pub use context::{
58 bind_context, bind_session_context, clear_context, clear_session_context, get_session_id,
59 unbind_context,
60};
61pub use errors::{
62 provider_immutable_error, ConfigurationError, EventSchemaError, ProviderImmutableError,
63 TelemetryError,
64};
65pub use fingerprint::compute_error_fingerprint;
66pub use health::{get_health_snapshot, HealthSnapshot};
67pub use logger::{
68 buffer_logger, configure_logging, enable_console_capture_for_tests,
69 enable_json_capture_for_tests, enable_pretty_capture_for_tests, get_logger, logger,
70 null_logger, reset_logging_config_for_tests, set_as_global_logger, take_console_capture,
71 take_json_capture, take_pretty_capture, BufferLogger, EventMetadata, LogEvent, Logger,
72 NullLogger,
73};
74pub use metrics::{
75 counter, gauge, get_meter, histogram, reset_metrics_for_tests, Counter, Gauge, Histogram, Meter,
76};
77pub use otel::adopt::{adopt_global_providers, adopted_global_providers, AdoptedProviders};
78pub use otel::{_reset_otel_for_tests, otel_installed_for_tests};
79pub use pii::{
80 get_pii_rules, get_secret_patterns, register_pii_rule, register_secret_pattern,
81 replace_pii_rules, reset_secret_patterns_for_tests, sanitize_payload, PIIMode, PIIRule,
82 SecretPattern,
83};
84pub use propagation::{
85 bind_propagation_context, extract_w3c_context, parse_baggage, PropagationContext,
86};
87pub use receipts::{
88 canonical_json, canonical_number, emit_receipt, enable_receipts,
89 get_emitted_receipts_for_tests, receipt_payload, reset_receipts_for_tests, sign_receipt,
90 ReceiptOptions, ReceiptSink, RedactionReceipt, SignReceiptOptions, TestReceiptCollector,
91 TEST_RECEIPT_CAPACITY,
92};
93pub use resilience::{
94 get_circuit_state, get_exporter_policy, run_with_resilience, set_exporter_policy,
95 ExporterPolicy,
96};
97pub use runtime::{
98 flush_result, get_runtime_config, get_runtime_status, provider_mode, reconfigure_result,
99 reconfigure_telemetry, reload_runtime_from_env, runtime_state, runtime_status,
100 signal_flush_result, telemetry_config, telemetry_runtime, update_runtime_config, FlushResult,
101 ProviderMode, ReconfigureResult, RuntimeState, RuntimeStatus, SignalFlushResult, SignalStatus,
102 TelemetryRuntime,
103};
104pub use sampling::{
105 get_sampling_policy, set_sampling_policy, should_sample, SamplingPolicy, Signal,
106};
107pub use schema::{
108 event, event_name, get_strict_schema, set_strict_schema, validate_required_keys, Event,
109};
110pub use setup::{flush_telemetry, setup_telemetry, shutdown_telemetry};
111pub use slo::{
112 classify_error, get_error_count_for_tests, get_request_count_for_tests, record_red_metrics,
113 record_use_metrics, reset_slo_for_tests, slo_initialized_for_tests,
114};
115pub use tracer::{
116 get_trace_context, get_tracer, set_trace_context, trace, tracer, NoopSpan, Tracer,
117};