Changes:
Features Moved the init_tracer() function to an implementation in TelemetryConfig for cleaner main file closes #43 Bug Fixes Telemetry is now opt-in again. Due to changes in opentelemetry, this required a major overhaul of the telemetryconfig function. closes #44
This commit is contained in:
@@ -1,10 +1,6 @@
|
||||
use crate::modules::datatypes::*;
|
||||
use crate::prelude::*;
|
||||
use crossbeam::channel::unbounded;
|
||||
use opentelemetry_otlp::WithTonicConfig;
|
||||
use std::sync::{Arc, Mutex};
|
||||
use std::thread;
|
||||
use tonic::transport::{Channel, ClientTlsConfig};
|
||||
|
||||
#[pyfunction]
|
||||
pub fn pull_policy_exec_histories(
|
||||
py: Python<'_>,
|
||||
@@ -25,7 +21,7 @@ pub fn pull_policy_exec_histories(
|
||||
std::process::abort();
|
||||
}
|
||||
};
|
||||
let tracer_provider = rt.block_on(async { init_tracer() });
|
||||
let tracer_provider = rt.block_on(async { TelemetryConfig::init_tracer() });
|
||||
global::set_tracer_provider(tracer_provider.clone());
|
||||
let tracer: global::BoxedTracer = global::tracer("tracer");
|
||||
let _cx: Context = Context::new();
|
||||
@@ -184,9 +180,6 @@ pub fn pull_policy_exec_histories(
|
||||
.unwrap()
|
||||
.enable_steady_tick(std::time::Duration::from_millis(100));
|
||||
let span: opentelemetry::trace::SpanRef<'_> = cx.span();
|
||||
//span.set_attribute(Key::new("Days").string(days.to_string()));
|
||||
//span.set_attribute(Key::new("Days"));
|
||||
//span.set_attribute(KeyValue::new("Policy Name", policy_names.clone()));
|
||||
span.set_attribute(KeyValue::new("Days", days));
|
||||
span.set_attribute(KeyValue::new("Policy Name", policy_names.clone()));
|
||||
loop {
|
||||
@@ -320,27 +313,3 @@ pub fn get_base_directory() -> PathBuf {
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
fn init_tracer() -> opentelemetry_sdk::trace::TracerProvider {
|
||||
let cfg: TelemetryConfig = TelemetryConfig::load();
|
||||
let endpoint = cfg.TELEM_URL.unwrap_or_default().clone();
|
||||
let channel_endpoint = endpoint.clone();
|
||||
let channel = Channel::from_shared(channel_endpoint.clone())
|
||||
.unwrap()
|
||||
.tls_config(ClientTlsConfig::new().with_native_roots())
|
||||
.unwrap()
|
||||
.connect_lazy();
|
||||
let exporter = opentelemetry_otlp::SpanExporter::builder()
|
||||
.with_tonic()
|
||||
.with_endpoint(endpoint.clone())
|
||||
.with_channel(channel)
|
||||
.build()
|
||||
.expect("Failed to build exporter");
|
||||
opentelemetry_sdk::trace::TracerProvider::builder()
|
||||
.with_simple_exporter(exporter)
|
||||
.with_resource(Resource::new(vec![KeyValue::new(
|
||||
"service.name",
|
||||
"LoxideLibs",
|
||||
)]))
|
||||
.build()
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user