From 6a0d183e7b134670f23faa70d080a126f6ff28f5 Mon Sep 17 00:00:00 2001 From: Sampras Lopes Date: Sat, 7 Jan 2023 17:43:19 +0530 Subject: [PATCH] fix(router_env): fix opentelemetry traces for router_env (#201) Co-authored-by: Nishant Joshi --- Cargo.lock | 2 + crates/redis_interface/src/commands.rs | 2 +- .../src/compatibility/stripe/customers.rs | 2 +- .../compatibility/stripe/payment_intents.rs | 2 +- .../src/compatibility/stripe/refunds.rs | 2 +- .../src/compatibility/stripe/setup_intents.rs | 2 +- crates/router/src/compatibility/wrap.rs | 2 +- crates/router/src/connector/adyen.rs | 2 +- crates/router/src/connector/stripe.rs | 2 +- crates/router/src/core/customers.rs | 2 +- crates/router/src/core/mandate.rs | 2 +- .../router/src/core/payment_methods/cards.rs | 2 +- crates/router/src/core/payments.rs | 2 +- crates/router/src/core/refunds.rs | 2 +- crates/router/src/core/refunds/validator.rs | 2 +- crates/router/src/core/utils.rs | 2 +- crates/router/src/core/webhooks.rs | 2 +- crates/router/src/routes/admin.rs | 5 +-- crates/router/src/routes/customers.rs | 5 +-- crates/router/src/routes/ephemeral_key.rs | 5 +-- crates/router/src/routes/health.rs | 5 +-- crates/router/src/routes/mandates.rs | 5 +-- crates/router/src/routes/payment_methods.rs | 5 +-- crates/router/src/routes/payments.rs | 5 +-- crates/router/src/routes/payouts.rs | 5 +-- crates/router/src/routes/refunds.rs | 5 +-- crates/router/src/routes/webhooks.rs | 5 +-- crates/router/src/scheduler/consumer.rs | 2 +- crates/router/src/scheduler/producer.rs | 2 +- crates/router/src/services/api.rs | 5 +-- crates/router/src/services/api/request.rs | 2 +- .../src/types/storage/payment_intent.rs | 2 +- crates/router_env/Cargo.toml | 6 ++- crates/router_env/src/logger/mod.rs | 3 +- crates/router_env/src/logger/setup.rs | 10 +++-- crates/storage_models/src/query/address.rs | 2 +- crates/storage_models/src/query/configs.rs | 2 +- .../src/query/connector_response.rs | 2 +- crates/storage_models/src/query/customers.rs | 2 +- crates/storage_models/src/query/events.rs | 2 +- crates/storage_models/src/query/generics.rs | 2 +- .../src/query/locker_mock_up.rs | 2 +- crates/storage_models/src/query/mandate.rs | 2 +- .../src/query/merchant_account.rs | 2 +- .../src/query/merchant_connector_account.rs | 2 +- .../src/query/payment_attempt.rs | 2 +- .../src/query/payment_intent.rs | 2 +- .../src/query/payment_method.rs | 2 +- .../src/query/process_tracker.rs | 2 +- crates/storage_models/src/query/refund.rs | 2 +- .../src/query/reverse_lookup.rs | 2 +- crates/storage_models/src/query/temp_card.rs | 2 +- docker-compose.yml | 37 +++++++++++++++++++ 53 files changed, 100 insertions(+), 87 deletions(-) diff --git a/Cargo.lock b/Cargo.lock index bd50a78cc6..d806bae97a 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -2817,6 +2817,8 @@ dependencies = [ "tracing", "tracing-actix-web", "tracing-appender", + "tracing-attributes", + "tracing-opentelemetry", "tracing-subscriber", "vergen", ] diff --git a/crates/redis_interface/src/commands.rs b/crates/redis_interface/src/commands.rs index 5626fd878b..62d5269223 100644 --- a/crates/redis_interface/src/commands.rs +++ b/crates/redis_interface/src/commands.rs @@ -21,7 +21,7 @@ use fred::{ }, }; use futures::StreamExt; -use router_env::{logger, tracing, tracing::instrument}; +use router_env::{instrument, logger, tracing}; use crate::{ errors, diff --git a/crates/router/src/compatibility/stripe/customers.rs b/crates/router/src/compatibility/stripe/customers.rs index 6c5f3c3353..552593d596 100644 --- a/crates/router/src/compatibility/stripe/customers.rs +++ b/crates/router/src/compatibility/stripe/customers.rs @@ -2,7 +2,7 @@ pub mod types; use actix_web::{delete, get, post, web, HttpRequest, HttpResponse}; use error_stack::report; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use crate::{ compatibility::{stripe::errors, wrap}, diff --git a/crates/router/src/compatibility/stripe/payment_intents.rs b/crates/router/src/compatibility/stripe/payment_intents.rs index 0090cedf59..56e58f181e 100644 --- a/crates/router/src/compatibility/stripe/payment_intents.rs +++ b/crates/router/src/compatibility/stripe/payment_intents.rs @@ -3,7 +3,7 @@ pub mod types; use actix_web::{get, post, web, HttpRequest, HttpResponse}; use api_models::payments as payment_types; use error_stack::report; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use crate::{ compatibility::{stripe::errors, wrap}, diff --git a/crates/router/src/compatibility/stripe/refunds.rs b/crates/router/src/compatibility/stripe/refunds.rs index 7b6da832b1..90fe7ee438 100644 --- a/crates/router/src/compatibility/stripe/refunds.rs +++ b/crates/router/src/compatibility/stripe/refunds.rs @@ -1,7 +1,7 @@ pub mod types; use actix_web::{get, post, web, HttpRequest, HttpResponse}; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use crate::{ compatibility::{stripe::errors, wrap}, diff --git a/crates/router/src/compatibility/stripe/setup_intents.rs b/crates/router/src/compatibility/stripe/setup_intents.rs index 473e8a6944..171fbb6b5e 100644 --- a/crates/router/src/compatibility/stripe/setup_intents.rs +++ b/crates/router/src/compatibility/stripe/setup_intents.rs @@ -3,7 +3,7 @@ pub mod types; use actix_web::{get, post, web, HttpRequest, HttpResponse}; use api_models::payments as payment_types; use error_stack::report; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use crate::{ compatibility::{stripe::errors, wrap}, diff --git a/crates/router/src/compatibility/wrap.rs b/crates/router/src/compatibility/wrap.rs index 1159deab66..a36d42414b 100644 --- a/crates/router/src/compatibility/wrap.rs +++ b/crates/router/src/compatibility/wrap.rs @@ -2,7 +2,7 @@ use std::future::Future; use actix_web::{HttpRequest, HttpResponse, Responder}; use error_stack::report; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use serde::Serialize; use crate::{ diff --git a/crates/router/src/connector/adyen.rs b/crates/router/src/connector/adyen.rs index 5b3eeff8dd..0c3f0a9336 100644 --- a/crates/router/src/connector/adyen.rs +++ b/crates/router/src/connector/adyen.rs @@ -4,7 +4,7 @@ use std::fmt::Debug; use bytes::Bytes; use error_stack::{IntoReport, ResultExt}; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use self::transformers as adyen; use crate::{ diff --git a/crates/router/src/connector/stripe.rs b/crates/router/src/connector/stripe.rs index 57e3643616..ff9ad969dc 100644 --- a/crates/router/src/connector/stripe.rs +++ b/crates/router/src/connector/stripe.rs @@ -4,7 +4,7 @@ use std::{collections::HashMap, fmt::Debug}; use bytes::Bytes; use error_stack::{IntoReport, ResultExt}; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use self::transformers as stripe; use crate::{ diff --git a/crates/router/src/core/customers.rs b/crates/router/src/core/customers.rs index f5acf0ac56..30c91c95f0 100644 --- a/crates/router/src/core/customers.rs +++ b/crates/router/src/core/customers.rs @@ -1,6 +1,6 @@ use common_utils::ext_traits::ValueExt; use error_stack::ResultExt; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use crate::{ core::{ diff --git a/crates/router/src/core/mandate.rs b/crates/router/src/core/mandate.rs index 3fbdebdaea..e63ea4f4b8 100644 --- a/crates/router/src/core/mandate.rs +++ b/crates/router/src/core/mandate.rs @@ -1,5 +1,5 @@ use error_stack::{report, ResultExt}; -use router_env::{logger, tracing, tracing::instrument}; +use router_env::{instrument, logger, tracing}; use storage_models::enums as storage_enums; use super::payments::helpers; diff --git a/crates/router/src/core/payment_methods/cards.rs b/crates/router/src/core/payment_methods/cards.rs index 89ef5058b2..414d507675 100644 --- a/crates/router/src/core/payment_methods/cards.rs +++ b/crates/router/src/core/payment_methods/cards.rs @@ -2,7 +2,7 @@ use std::collections; use common_utils::{consts, generate_id}; use error_stack::{report, ResultExt}; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use crate::{ configs::settings, diff --git a/crates/router/src/core/payments.rs b/crates/router/src/core/payments.rs index 1d2d6bfdbe..bd6bd7b467 100644 --- a/crates/router/src/core/payments.rs +++ b/crates/router/src/core/payments.rs @@ -8,7 +8,7 @@ use std::{fmt::Debug, marker::PhantomData, time::Instant}; use common_utils::ext_traits::AsyncExt; use error_stack::{IntoReport, ResultExt}; use futures::future::join_all; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use time; pub use self::operations::{ diff --git a/crates/router/src/core/refunds.rs b/crates/router/src/core/refunds.rs index af0e3bb013..8f33b253b9 100644 --- a/crates/router/src/core/refunds.rs +++ b/crates/router/src/core/refunds.rs @@ -1,7 +1,7 @@ pub mod validator; use error_stack::{report, IntoReport, ResultExt}; -use router_env::tracing::{self, instrument}; +use router_env::{instrument, tracing}; use uuid::Uuid; use crate::{ diff --git a/crates/router/src/core/refunds/validator.rs b/crates/router/src/core/refunds/validator.rs index ecd900b582..71e698a012 100644 --- a/crates/router/src/core/refunds/validator.rs +++ b/crates/router/src/core/refunds/validator.rs @@ -1,5 +1,5 @@ use error_stack::report; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use time::PrimitiveDateTime; use crate::{ diff --git a/crates/router/src/core/utils.rs b/crates/router/src/core/utils.rs index 9a72191017..d2edd3e42a 100644 --- a/crates/router/src/core/utils.rs +++ b/crates/router/src/core/utils.rs @@ -1,7 +1,7 @@ use std::marker::PhantomData; use error_stack::ResultExt; -use router_env::tracing::{self, instrument}; +use router_env::{instrument, tracing}; use super::payments::{helpers, PaymentAddress}; use crate::{ diff --git a/crates/router/src/core/webhooks.rs b/crates/router/src/core/webhooks.rs index 3f8ebd8c38..86d1e7348a 100644 --- a/crates/router/src/core/webhooks.rs +++ b/crates/router/src/core/webhooks.rs @@ -3,7 +3,7 @@ pub mod utils; use error_stack::{IntoReport, ResultExt}; use masking::ExposeInterface; -use router_env::tracing::{self, instrument}; +use router_env::{instrument, tracing}; use crate::{ consts, diff --git a/crates/router/src/routes/admin.rs b/crates/router/src/routes/admin.rs index 6351cd8803..8518d5cc1b 100644 --- a/crates/router/src/routes/admin.rs +++ b/crates/router/src/routes/admin.rs @@ -1,8 +1,5 @@ use actix_web::{web, HttpRequest, HttpResponse}; -use router_env::{ - tracing::{self, instrument}, - Flow, -}; +use router_env::{instrument, tracing, Flow}; use super::app::AppState; use crate::{core::admin::*, services::api, types::api::admin}; diff --git a/crates/router/src/routes/customers.rs b/crates/router/src/routes/customers.rs index 419e4672e6..08e2342a42 100644 --- a/crates/router/src/routes/customers.rs +++ b/crates/router/src/routes/customers.rs @@ -1,8 +1,5 @@ use actix_web::{web, HttpRequest, HttpResponse, Responder}; -use router_env::{ - tracing::{self, instrument}, - Flow, -}; +use router_env::{instrument, tracing, Flow}; use super::app::AppState; use crate::{ diff --git a/crates/router/src/routes/ephemeral_key.rs b/crates/router/src/routes/ephemeral_key.rs index 30a580a0f5..f2ae1aa908 100644 --- a/crates/router/src/routes/ephemeral_key.rs +++ b/crates/router/src/routes/ephemeral_key.rs @@ -1,8 +1,5 @@ use actix_web::{web, HttpRequest, HttpResponse}; -use router_env::{ - tracing::{self, instrument}, - Flow, -}; +use router_env::{instrument, tracing, Flow}; use super::AppState; use crate::{core::payments::helpers, services::api, types::api::customers}; diff --git a/crates/router/src/routes/health.rs b/crates/router/src/routes/health.rs index cc0b72318b..7c7f29bd18 100644 --- a/crates/router/src/routes/health.rs +++ b/crates/router/src/routes/health.rs @@ -1,7 +1,4 @@ -use router_env::{ - logger, - tracing::{self, instrument}, -}; +use router_env::{instrument, logger, tracing}; use crate::routes::metrics; diff --git a/crates/router/src/routes/mandates.rs b/crates/router/src/routes/mandates.rs index 1f434d1015..ed3ab15ced 100644 --- a/crates/router/src/routes/mandates.rs +++ b/crates/router/src/routes/mandates.rs @@ -1,8 +1,5 @@ use actix_web::{web, HttpRequest, HttpResponse}; -use router_env::{ - tracing::{self, instrument}, - Flow, -}; +use router_env::{instrument, tracing, Flow}; use super::app::AppState; use crate::{core::mandate, services::api, types::api::mandates}; diff --git a/crates/router/src/routes/payment_methods.rs b/crates/router/src/routes/payment_methods.rs index dc726c654c..410f6d69d1 100644 --- a/crates/router/src/routes/payment_methods.rs +++ b/crates/router/src/routes/payment_methods.rs @@ -1,8 +1,5 @@ use actix_web::{web, HttpRequest, HttpResponse}; -use router_env::{ - tracing::{self, instrument}, - Flow, -}; +use router_env::{instrument, tracing, Flow}; use super::app::AppState; use crate::{ diff --git a/crates/router/src/routes/payments.rs b/crates/router/src/routes/payments.rs index b0ba777199..adee6ff016 100644 --- a/crates/router/src/routes/payments.rs +++ b/crates/router/src/routes/payments.rs @@ -2,10 +2,7 @@ use std::borrow::Cow; use actix_web::{web, Responder}; use error_stack::report; -use router_env::{ - tracing::{self, instrument}, - Flow, -}; +use router_env::{instrument, tracing, Flow}; use crate::{ self as app, diff --git a/crates/router/src/routes/payouts.rs b/crates/router/src/routes/payouts.rs index 61aa1f4650..3c3408674b 100644 --- a/crates/router/src/routes/payouts.rs +++ b/crates/router/src/routes/payouts.rs @@ -2,10 +2,7 @@ use actix_web::{ body::{BoxBody, MessageBody}, HttpResponse, Responder, }; -use router_env::{ - tracing::{self, instrument}, - Flow, -}; +use router_env::{instrument, tracing, Flow}; #[instrument(skip_all, fields(flow = ?Flow::PayoutsCreate))] // #[post("/create")] diff --git a/crates/router/src/routes/refunds.rs b/crates/router/src/routes/refunds.rs index c274ad6ccf..ae58ffdbec 100644 --- a/crates/router/src/routes/refunds.rs +++ b/crates/router/src/routes/refunds.rs @@ -1,8 +1,5 @@ use actix_web::{web, HttpRequest, HttpResponse}; -use router_env::{ - tracing::{self, instrument}, - Flow, -}; +use router_env::{instrument, tracing, Flow}; use super::app::AppState; use crate::{core::refunds::*, services::api, types::api::refunds}; diff --git a/crates/router/src/routes/webhooks.rs b/crates/router/src/routes/webhooks.rs index bb71e37826..0fd94c4452 100644 --- a/crates/router/src/routes/webhooks.rs +++ b/crates/router/src/routes/webhooks.rs @@ -1,8 +1,5 @@ use actix_web::{web, HttpRequest, Responder}; -use router_env::{ - tracing::{self, instrument}, - Flow, -}; +use router_env::{instrument, tracing, Flow}; use super::app::AppState; use crate::{core::webhooks, services::api}; diff --git a/crates/router/src/scheduler/consumer.rs b/crates/router/src/scheduler/consumer.rs index d6da3995cc..f84348c641 100644 --- a/crates/router/src/scheduler/consumer.rs +++ b/crates/router/src/scheduler/consumer.rs @@ -8,7 +8,7 @@ use std::{ use error_stack::ResultExt; use futures::future; use redis_interface::{RedisConnectionPool, RedisEntryId}; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use time::PrimitiveDateTime; use uuid::Uuid; diff --git a/crates/router/src/scheduler/producer.rs b/crates/router/src/scheduler/producer.rs index b9dc031298..04c5d4b7ce 100644 --- a/crates/router/src/scheduler/producer.rs +++ b/crates/router/src/scheduler/producer.rs @@ -1,7 +1,7 @@ use std::sync::Arc; use error_stack::{report, ResultExt}; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use time::Duration; use super::metrics; diff --git a/crates/router/src/services/api.rs b/crates/router/src/services/api.rs index fb4e61bf14..b76d61c12c 100644 --- a/crates/router/src/services/api.rs +++ b/crates/router/src/services/api.rs @@ -7,10 +7,7 @@ use actix_web::{body, HttpRequest, HttpResponse, Responder}; use bytes::Bytes; use error_stack::{report, IntoReport, Report, ResultExt}; use masking::ExposeOptionInterface; -use router_env::{ - tracing::{self, instrument}, - Tag, -}; +use router_env::{instrument, tracing, Tag}; use serde::Serialize; use self::request::{ContentType, HeaderExt, RequestBuilderExt}; diff --git a/crates/router/src/services/api/request.rs b/crates/router/src/services/api/request.rs index e7c3d8c357..cc6ab747e6 100644 --- a/crates/router/src/services/api/request.rs +++ b/crates/router/src/services/api/request.rs @@ -2,7 +2,7 @@ use std::{collections, str::FromStr}; use error_stack::{IntoReport, ResultExt}; use masking::Secret; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use serde::{Deserialize, Serialize}; use crate::{ diff --git a/crates/router/src/types/storage/payment_intent.rs b/crates/router/src/types/storage/payment_intent.rs index e6545e8359..dfc019444b 100644 --- a/crates/router/src/types/storage/payment_intent.rs +++ b/crates/router/src/types/storage/payment_intent.rs @@ -1,7 +1,7 @@ use async_bb8_diesel::AsyncRunQueryDsl; use diesel::{associations::HasTable, ExpressionMethods, QueryDsl}; use error_stack::{IntoReport, ResultExt}; -use router_env::tracing::{self, instrument}; +use router_env::{instrument, tracing}; pub use storage_models::{ errors, payment_intent::{ diff --git a/crates/router_env/Cargo.toml b/crates/router_env/Cargo.toml index e774f099f0..1d842d4072 100644 --- a/crates/router_env/Cargo.toml +++ b/crates/router_env/Cargo.toml @@ -21,10 +21,12 @@ serde_path_to_error = "0.1.8" strum = { version = "0.24.1", features = ["derive"] } time = { version = "0.3.17", default-features = false, features = ["formatting"] } tokio = { version = "1.23.0" } -tracing = "0.1.36" +tracing = { version = "0.1.36" } tracing-actix-web = { version = "0.6.1", features = ["opentelemetry_0_18"], optional = true } -tracing-appender = "0.2.2" +tracing-appender = { version = "0.2.2" } +tracing-attributes = "=0.1.22" tracing-subscriber = { version = "0.3.15", default-features = true, features = ["json", "env-filter", "registry"] } +tracing-opentelemetry = { version = "0.18.0" } vergen = { version = "7.4.3", optional = true } [dev-dependencies] diff --git a/crates/router_env/src/logger/mod.rs b/crates/router_env/src/logger/mod.rs index 9cc457466c..896227c956 100644 --- a/crates/router_env/src/logger/mod.rs +++ b/crates/router_env/src/logger/mod.rs @@ -2,7 +2,8 @@ //! Logger of the system. //! -pub use tracing::{debug, error, event as log, info, instrument, warn}; +pub use tracing::{debug, error, event as log, info, warn}; +pub use tracing_attributes::instrument; pub mod config; pub use crate::config::Config; diff --git a/crates/router_env/src/logger/setup.rs b/crates/router_env/src/logger/setup.rs index e2970b3be1..011d5c88ab 100644 --- a/crates/router_env/src/logger/setup.rs +++ b/crates/router_env/src/logger/setup.rs @@ -16,9 +16,7 @@ use opentelemetry::{ }; use opentelemetry_otlp::WithExportConfig; use tracing_appender::non_blocking::WorkerGuard; -use tracing_subscriber::{ - filter, fmt, layer::SubscriberExt, util::SubscriberInitExt, EnvFilter, Layer, -}; +use tracing_subscriber::{filter, fmt, prelude::*, util::SubscriberInitExt, EnvFilter, Layer}; use crate::{config, FormattingLayer, Level, StorageSubscription}; @@ -72,8 +70,14 @@ pub fn setup>( None }; + let telemetry_layer = match telemetry { + Some(Ok(ref tracer)) => Some(tracing_opentelemetry::layer().with_tracer(tracer.clone())), + _ => None, + }; + // Use 'RUST_LOG' environment variable will override the config settings let subscriber = tracing_subscriber::registry() + .with(telemetry_layer) .with(StorageSubscription) .with(file_writer) .with( diff --git a/crates/storage_models/src/query/address.rs b/crates/storage_models/src/query/address.rs index 621e8e4bd9..b4acbc44c6 100644 --- a/crates/storage_models/src/query/address.rs +++ b/crates/storage_models/src/query/address.rs @@ -1,5 +1,5 @@ use diesel::{associations::HasTable, BoolExpressionMethods, ExpressionMethods}; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use super::generics; use crate::{ diff --git a/crates/storage_models/src/query/configs.rs b/crates/storage_models/src/query/configs.rs index 7f1f7bf77f..705a6f1a7b 100644 --- a/crates/storage_models/src/query/configs.rs +++ b/crates/storage_models/src/query/configs.rs @@ -1,5 +1,5 @@ use diesel::associations::HasTable; -use router_env::tracing::{self, instrument}; +use router_env::{instrument, tracing}; use super::generics; use crate::{ diff --git a/crates/storage_models/src/query/connector_response.rs b/crates/storage_models/src/query/connector_response.rs index 8dd4f06547..4ec41a2ad2 100644 --- a/crates/storage_models/src/query/connector_response.rs +++ b/crates/storage_models/src/query/connector_response.rs @@ -1,5 +1,5 @@ use diesel::{associations::HasTable, BoolExpressionMethods, ExpressionMethods}; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use super::generics; use crate::{ diff --git a/crates/storage_models/src/query/customers.rs b/crates/storage_models/src/query/customers.rs index be17ff8fee..cd4510d35d 100644 --- a/crates/storage_models/src/query/customers.rs +++ b/crates/storage_models/src/query/customers.rs @@ -1,5 +1,5 @@ use diesel::{associations::HasTable, BoolExpressionMethods, ExpressionMethods}; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use super::generics; use crate::{ diff --git a/crates/storage_models/src/query/events.rs b/crates/storage_models/src/query/events.rs index bd2b6e09c4..7606f65fb1 100644 --- a/crates/storage_models/src/query/events.rs +++ b/crates/storage_models/src/query/events.rs @@ -1,4 +1,4 @@ -use router_env::tracing::{self, instrument}; +use router_env::{instrument, tracing}; use super::generics; use crate::{ diff --git a/crates/storage_models/src/query/generics.rs b/crates/storage_models/src/query/generics.rs index d50ef9d564..2db2824603 100644 --- a/crates/storage_models/src/query/generics.rs +++ b/crates/storage_models/src/query/generics.rs @@ -19,7 +19,7 @@ use diesel::{ Insertable, QuerySource, Table, }; use error_stack::{report, IntoReport, ResultExt}; -use router_env::{logger, tracing, tracing::instrument}; +use router_env::{instrument, logger, tracing}; use crate::{errors, PgPooledConn, StorageResult}; diff --git a/crates/storage_models/src/query/locker_mock_up.rs b/crates/storage_models/src/query/locker_mock_up.rs index c1cf4bbba7..381905d6be 100644 --- a/crates/storage_models/src/query/locker_mock_up.rs +++ b/crates/storage_models/src/query/locker_mock_up.rs @@ -1,5 +1,5 @@ use diesel::{associations::HasTable, ExpressionMethods}; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use super::generics; use crate::{ diff --git a/crates/storage_models/src/query/mandate.rs b/crates/storage_models/src/query/mandate.rs index 3534fa2b53..531362e453 100644 --- a/crates/storage_models/src/query/mandate.rs +++ b/crates/storage_models/src/query/mandate.rs @@ -1,6 +1,6 @@ use diesel::{associations::HasTable, BoolExpressionMethods, ExpressionMethods}; use error_stack::report; -use router_env::tracing::{self, instrument}; +use router_env::{instrument, tracing}; use super::generics; use crate::{errors, mandate::*, schema::mandate::dsl, PgPooledConn, StorageResult}; diff --git a/crates/storage_models/src/query/merchant_account.rs b/crates/storage_models/src/query/merchant_account.rs index ffa6c218e4..8d4f706b73 100644 --- a/crates/storage_models/src/query/merchant_account.rs +++ b/crates/storage_models/src/query/merchant_account.rs @@ -1,5 +1,5 @@ use diesel::{associations::HasTable, ExpressionMethods}; -use router_env::tracing::{self, instrument}; +use router_env::{instrument, tracing}; use super::generics; use crate::{ diff --git a/crates/storage_models/src/query/merchant_connector_account.rs b/crates/storage_models/src/query/merchant_connector_account.rs index ea8bb0229b..e541316ded 100644 --- a/crates/storage_models/src/query/merchant_connector_account.rs +++ b/crates/storage_models/src/query/merchant_connector_account.rs @@ -1,5 +1,5 @@ use diesel::{associations::HasTable, BoolExpressionMethods, ExpressionMethods}; -use router_env::tracing::{self, instrument}; +use router_env::{instrument, tracing}; use super::generics; use crate::{ diff --git a/crates/storage_models/src/query/payment_attempt.rs b/crates/storage_models/src/query/payment_attempt.rs index c4fdfd6266..4758d9209d 100644 --- a/crates/storage_models/src/query/payment_attempt.rs +++ b/crates/storage_models/src/query/payment_attempt.rs @@ -1,6 +1,6 @@ use diesel::{associations::HasTable, BoolExpressionMethods, ExpressionMethods}; use error_stack::IntoReport; -use router_env::tracing::{self, instrument}; +use router_env::{instrument, tracing}; use super::generics; use crate::{ diff --git a/crates/storage_models/src/query/payment_intent.rs b/crates/storage_models/src/query/payment_intent.rs index 0d4c95a7d6..7de8f4d9bd 100644 --- a/crates/storage_models/src/query/payment_intent.rs +++ b/crates/storage_models/src/query/payment_intent.rs @@ -1,5 +1,5 @@ use diesel::{associations::HasTable, BoolExpressionMethods, ExpressionMethods}; -use router_env::tracing::{self, instrument}; +use router_env::{instrument, tracing}; use super::generics; use crate::{ diff --git a/crates/storage_models/src/query/payment_method.rs b/crates/storage_models/src/query/payment_method.rs index 60e55e62fe..33fdf2d85b 100644 --- a/crates/storage_models/src/query/payment_method.rs +++ b/crates/storage_models/src/query/payment_method.rs @@ -1,5 +1,5 @@ use diesel::{associations::HasTable, BoolExpressionMethods, ExpressionMethods}; -use router_env::tracing::{self, instrument}; +use router_env::{instrument, tracing}; use super::generics; use crate::{ diff --git a/crates/storage_models/src/query/process_tracker.rs b/crates/storage_models/src/query/process_tracker.rs index be7891aa42..a6855cb53d 100644 --- a/crates/storage_models/src/query/process_tracker.rs +++ b/crates/storage_models/src/query/process_tracker.rs @@ -1,5 +1,5 @@ use diesel::{associations::HasTable, BoolExpressionMethods, ExpressionMethods}; -use router_env::tracing::{self, instrument}; +use router_env::{instrument, tracing}; use time::PrimitiveDateTime; use super::generics; diff --git a/crates/storage_models/src/query/refund.rs b/crates/storage_models/src/query/refund.rs index 883ebff372..aaf023baea 100644 --- a/crates/storage_models/src/query/refund.rs +++ b/crates/storage_models/src/query/refund.rs @@ -1,5 +1,5 @@ use diesel::{associations::HasTable, BoolExpressionMethods, ExpressionMethods}; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use super::generics; use crate::{ diff --git a/crates/storage_models/src/query/reverse_lookup.rs b/crates/storage_models/src/query/reverse_lookup.rs index bee3641464..351277ca15 100644 --- a/crates/storage_models/src/query/reverse_lookup.rs +++ b/crates/storage_models/src/query/reverse_lookup.rs @@ -1,5 +1,5 @@ use diesel::{associations::HasTable, ExpressionMethods}; -use router_env::{tracing, tracing::instrument}; +use router_env::{instrument, tracing}; use super::generics; use crate::{ diff --git a/crates/storage_models/src/query/temp_card.rs b/crates/storage_models/src/query/temp_card.rs index eb9fdc2732..4ebe39924c 100644 --- a/crates/storage_models/src/query/temp_card.rs +++ b/crates/storage_models/src/query/temp_card.rs @@ -1,5 +1,5 @@ use diesel::{associations::HasTable, ExpressionMethods}; -use router_env::tracing::{self, instrument}; +use router_env::{instrument, tracing}; use super::generics; use crate::{ diff --git a/docker-compose.yml b/docker-compose.yml index dc25f90ee1..d05a89c43c 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -4,6 +4,8 @@ volumes: cargo_cache: pg_data: cargo_build_cache: + p_cargo_build_cache: + c_cargo_build_cache: networks: router_net: @@ -98,6 +100,41 @@ services: start_period: 20s timeout: 10s + orca-producer: + image: rust:1.65 + command: cargo run --bin scheduler -- -f ./config/docker_compose.toml + working_dir: /app + networks: + - router_net + volumes: + - ./:/app + - cargo_cache:/cargo_cache + - p_cargo_build_cache:/cargo_build_cache + environment: + - CARGO_TARGET_DIR=/cargo_build_cache + - OTEL_EXPORTER_OTLP_ENDPOINT=https://otel-collector:4317 + - SCHEDULER_FLOW=producer + labels: + logs: "promtail" + + orca-consumer: + image: rust:1.65 + command: cargo run --bin scheduler -- -f ./config/docker_compose.toml + working_dir: /app + networks: + - router_net + volumes: + - ./:/app + - cargo_cache:/cargo_cache + - c_cargo_build_cache:/cargo_build_cache + environment: + - CARGO_TARGET_DIR=/cargo_build_cache + - OTEL_EXPORTER_OTLP_ENDPOINT=https://otel-collector:4317 + - SCHEDULER_FLOW=consumer + labels: + logs: "promtail" + + redis-queue: image: redis:7 deploy: