aboutsummaryrefslogtreecommitdiffstats
path: root/crates/pseudonyms
diff options
context:
space:
mode:
authorrtkay123 <dev@kanjala.com>2025-08-11 13:12:39 +0200
committerrtkay123 <dev@kanjala.com>2025-08-11 13:12:48 +0200
commit968f8e837f8e383758d4388a00625982093dd29b (patch)
tree238169b35658cf0a8f6913fc6b7b1ab6f24655f0 /crates/pseudonyms
parent418b7bcea86d6838b704ee8d3f55501debd5ee21 (diff)
downloadwarden-968f8e837f8e383758d4388a00625982093dd29b.tar.bz2
warden-968f8e837f8e383758d4388a00625982093dd29b.zip
feat(warden): otel span kind
for service graphs in tempo
Diffstat (limited to 'crates/pseudonyms')
-rw-r--r--crates/pseudonyms/src/server.rs3
-rw-r--r--crates/pseudonyms/src/state/mutate.rs10
2 files changed, 10 insertions, 3 deletions
diff --git a/crates/pseudonyms/src/server.rs b/crates/pseudonyms/src/server.rs
index 88c46b4..4b33375 100644
--- a/crates/pseudonyms/src/server.rs
+++ b/crates/pseudonyms/src/server.rs
@@ -21,8 +21,7 @@ pub async fn serve(state: AppHandle, tx: tokio::sync::oneshot::Sender<u16>) -> a
info!(addr = ?socket_addr, "starting server");
Server::builder()
- .trace_fn(|_| tracing::info_span!(env!("CARGO_PKG_NAME")))
- // .add_service(QueryUsersServer::new(state.clone()))
+ .trace_fn(|_| tracing::trace_span!(env!("CARGO_PKG_NAME"), "otel.kind" = "server"))
.add_service(MutatePseudonymServer::with_interceptor(
state.clone(),
MyInterceptor,
diff --git a/crates/pseudonyms/src/state/mutate.rs b/crates/pseudonyms/src/state/mutate.rs
index 6a737b5..de331d2 100644
--- a/crates/pseudonyms/src/state/mutate.rs
+++ b/crates/pseudonyms/src/state/mutate.rs
@@ -1,6 +1,6 @@
use time::OffsetDateTime;
use tonic::{Request, Response, Status};
-use tracing::{Instrument, info_span, instrument};
+use tracing::{Instrument, debug, info_span, instrument, trace};
use warden_core::{
google,
pseudonyms::transaction_relationship::{
@@ -21,9 +21,12 @@ impl MutatePseudonym for AppHandle {
request: Request<CreatePseudonymRequest>,
) -> Result<Response<google::protobuf::Empty>, Status> {
let body = request.into_inner();
+ trace!("extracting transaction relationship");
let transaction_relationship = body
.transaction_relationship
.ok_or_else(|| tonic::Status::data_loss("transaction_relationship"))?;
+
+ debug!("starting database transaction");
let mut tx = self
.services
.postgres
@@ -41,6 +44,7 @@ impl MutatePseudonym for AppHandle {
format!("{}{}", body.creditor_account_id, body.debtor_account_id),
);
+ trace!("inserting account");
sqlx::query!(
"insert into account (id)
select * from unnest($1::text[])
@@ -67,6 +71,7 @@ impl MutatePseudonym for AppHandle {
let cre_dt_tm = transaction_relationship.cre_dt_tm.expect("cre_dt_tm");
let cre_dt_tm = OffsetDateTime::try_from(cre_dt_tm).expect("offset date time conv");
+ trace!("inserting entity");
sqlx::query!(
"insert into entity (id, cre_dt_tm)
select * from unnest($1::text[], $2::timestamptz[])
@@ -107,6 +112,7 @@ impl MutatePseudonym for AppHandle {
span.set_attribute(attribute::DB_QUERY_TEXT, "insert into account_holder");
span.set_attribute(attribute::DB_COLLECTION_NAME, "account_holder");
+ trace!("inserting account holders");
sqlx::query!(
"insert into account_holder (source, destination, cre_dt_tm)
select * from unnest($1::text[], $2::text[], $3::timestamptz[])
@@ -126,6 +132,7 @@ impl MutatePseudonym for AppHandle {
.latlng
.map(|value| (value.latitude, value.longitude));
+ trace!("inserting transaction relationship");
let span = info_span!("create.pseudonyms.transaction_relationship");
span.set_attribute(attribute::DB_SYSTEM_NAME, "postgres");
span.set_attribute(attribute::DB_OPERATION_NAME, "insert");
@@ -181,6 +188,7 @@ impl MutatePseudonym for AppHandle {
span.set_attribute(attribute::DB_SYSTEM_NAME, "postgres");
span.set_attribute(attribute::DB_OPERATION_NAME, "commit");
+ debug!("commiting transaction");
tx.commit()
.instrument(span)
.await