examples: update to tracing 0.1.16, use #[instrument] (#354)
* examples: update to `tracing` 0.1.14, use `#[instrument]` Now that `tracing-attributes`'s `#[instrument]` macro plays nicely with `async-trait`, we can update the tracing example to use `instrument`. This lets us simplify the events emitted in the example. Signed-off-by: Eliza Weisman <[email protected]> * feat(transport): Dynamic load balancing (#341) * Fix typo (#356) Co-authored-by: Dawid Nowak <[email protected]> Co-authored-by: Paulo Duarte <[email protected]>
This commit is contained in:
co-authored by
Dawid Nowak
Paulo Duarte
parent
98bcc339b1
commit
034c850254
+2
-2
@@ -134,7 +134,7 @@ serde = { version = "1.0", features = ["derive"] }
|
|||||||
serde_json = "1.0"
|
serde_json = "1.0"
|
||||||
rand = "0.7"
|
rand = "0.7"
|
||||||
# Tracing
|
# Tracing
|
||||||
tracing = "0.1"
|
tracing = "0.1.16"
|
||||||
tracing-subscriber = { version = "0.2", features = ["tracing-log"] }
|
tracing-subscriber = { version = "0.2", features = ["tracing-log"] }
|
||||||
tracing-attributes = "0.1"
|
tracing-attributes = "0.1"
|
||||||
tracing-futures = "0.2"
|
tracing-futures = "0.2"
|
||||||
@@ -151,4 +151,4 @@ tonic-health = { path = "../tonic-health" }
|
|||||||
listenfd = "0.3"
|
listenfd = "0.3"
|
||||||
|
|
||||||
[build-dependencies]
|
[build-dependencies]
|
||||||
tonic-build = { path = "../tonic-build", features = ["prost"] }
|
tonic-build = { path = "../tonic-build", features = ["prost"] }
|
||||||
@@ -9,22 +9,23 @@ use hello_world::{
|
|||||||
HelloReply, HelloRequest,
|
HelloReply, HelloRequest,
|
||||||
};
|
};
|
||||||
|
|
||||||
#[derive(Default)]
|
#[derive(Debug, Default)]
|
||||||
pub struct MyGreeter {}
|
pub struct MyGreeter {}
|
||||||
|
|
||||||
#[tonic::async_trait]
|
#[tonic::async_trait]
|
||||||
impl Greeter for MyGreeter {
|
impl Greeter for MyGreeter {
|
||||||
|
#[tracing::instrument]
|
||||||
async fn say_hello(
|
async fn say_hello(
|
||||||
&self,
|
&self,
|
||||||
request: Request<HelloRequest>,
|
request: Request<HelloRequest>,
|
||||||
) -> Result<Response<HelloReply>, Status> {
|
) -> Result<Response<HelloReply>, Status> {
|
||||||
tracing::info!(message = "Inbound request.", metadata = ?request.metadata());
|
tracing::info!("received request");
|
||||||
|
|
||||||
let reply = hello_world::HelloReply {
|
let reply = hello_world::HelloReply {
|
||||||
message: format!("Hello {}!", request.into_inner().name),
|
message: format!("Hello {}!", request.into_inner().name),
|
||||||
};
|
};
|
||||||
|
|
||||||
tracing::debug!(message = "Sending reply.", response = %reply.message);
|
tracing::debug!("sending response");
|
||||||
|
|
||||||
Ok(Response::new(reply))
|
Ok(Response::new(reply))
|
||||||
}
|
}
|
||||||
@@ -32,7 +33,7 @@ impl Greeter for MyGreeter {
|
|||||||
|
|
||||||
#[tokio::main]
|
#[tokio::main]
|
||||||
async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
async fn main() -> Result<(), Box<dyn std::error::Error>> {
|
||||||
tracing_subscriber::FmtSubscriber::builder()
|
tracing_subscriber::fmt()
|
||||||
.with_max_level(tracing::Level::DEBUG)
|
.with_max_level(tracing::Level::DEBUG)
|
||||||
.init();
|
.init();
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user