1- use std:: { ops :: Deref , sync:: Arc } ;
1+ use std:: sync:: Arc ;
22
33use clap:: Parser ;
44use futures:: StreamExt ;
55use stackable_operator:: {
66 YamlSchema ,
7- cli:: { Command , ProductOperatorRun , RollingPeriod } ,
7+ cli:: { Command , ProductOperatorRun } ,
88 commons:: authentication:: AuthenticationClass ,
99 k8s_openapi:: api:: { apps:: v1:: StatefulSet , core:: v1:: Service } ,
1010 kube:: {
@@ -20,8 +20,7 @@ use stackable_operator::{
2020 logging:: controller:: report_controller_reconciled,
2121 shared:: yaml:: SerializeOptions ,
2222} ;
23- use stackable_telemetry:: { Tracing , tracing:: settings:: Settings } ;
24- use tracing:: level_filters:: LevelFilter ;
23+ use stackable_telemetry:: Tracing ;
2524
2625use crate :: {
2726 airflow_controller:: AIRFLOW_FULL_CONTROLLER_NAME ,
@@ -66,45 +65,12 @@ async fn main() -> anyhow::Result<()> {
6665 telemetry_arguments,
6766 cluster_info_opts,
6867 } ) => {
69- let _tracing_guard = Tracing :: builder ( )
70- // TODO (@Techassi): This should be a constant
71- . service_name ( "airflow-operator" )
72- . with_console_output ( (
73- ENV_VAR_CONSOLE_LOG ,
74- LevelFilter :: INFO ,
75- !telemetry_arguments. no_console_output ,
76- ) )
77- // NOTE (@NickLarsenNZ): Before stackable-telemetry was used, the log directory was
78- // set via an env: `AIRFLOW_OPERATOR_LOG_DIRECTORY`.
79- // See: https://github.com/stackabletech/operator-rs/blob/f035997fca85a54238c8de895389cc50b4d421e2/crates/stackable-operator/src/logging/mod.rs#L40
80- // Now it will be `ROLLING_LOGS_DIR` (or via `--rolling-logs <DIRECTORY>`).
81- . with_file_output ( telemetry_arguments. rolling_logs . map ( |log_directory| {
82- let rotation_period = telemetry_arguments
83- . rolling_logs_period
84- . unwrap_or ( RollingPeriod :: Hourly )
85- . deref ( )
86- . clone ( ) ;
87-
88- Settings :: builder ( )
89- // TODO (@Techassi): Change to CONSOLE_LOG or FILE_LOG, create constant
90- . with_environment_variable ( ENV_VAR_CONSOLE_LOG )
91- . with_default_level ( LevelFilter :: INFO )
92- . file_log_settings_builder ( log_directory, "tracing-rs.log" )
93- . with_rotation_period ( rotation_period)
94- . build ( )
95- } ) )
96- . with_otlp_log_exporter ( (
97- "OTLP_LOG" ,
98- LevelFilter :: DEBUG ,
99- telemetry_arguments. otlp_logs ,
100- ) )
101- . with_otlp_trace_exporter ( (
102- "OTLP_TRACE" ,
103- LevelFilter :: DEBUG ,
104- telemetry_arguments. otlp_traces ,
105- ) )
106- . build ( )
107- . init ( ) ?;
68+ // NOTE (@NickLarsenNZ): Before stackable-telemetry was used:
69+ // - The console log level was set by `AIRFLOW_OPERATOR_LOG`, and is now `CONSOLE_LOG` (when using Tracing::pre_configured).
70+ // - The file log level was (maybe?) set by `AIRFLOW_OPERATOR_LOG`, and is now set via `FILE_LOG` (when using Tracing::pre_configured).
71+ // - The file log directory was set by `AIRFLOW_OPERATOR_LOG_DIRECTORY`, and is now set by `ROLLING_LOGS_DIR` (or via `--rolling-logs <DIRECTORY>`).
72+ let _tracing_guard =
73+ Tracing :: pre_configured ( built_info:: PKG_NAME , telemetry_arguments) . init ( ) ?;
10874
10975 tracing:: info!(
11076 built_info. pkg_version = built_info:: PKG_VERSION ,
0 commit comments