Skip to content

Commit 9420053

Browse files
feat(router): log input/ouput at debug level (#364)
@njhill FYI
1 parent e3e487d commit 9420053

File tree

2 files changed

+20
-7
lines changed

2 files changed

+20
-7
lines changed

integration-tests/conftest.py

Lines changed: 5 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -231,8 +231,11 @@ def local_launcher(
231231
if quantize:
232232
args.append("--quantize")
233233

234+
env = os.environ
235+
env["LOG_LEVEL"] = "info,text_generation_router=debug"
236+
234237
with subprocess.Popen(
235-
args, stdout=subprocess.PIPE, stderr=subprocess.PIPE
238+
args, stdout=subprocess.PIPE, stderr=subprocess.PIPE, env=env
236239
) as process:
237240
yield ProcessLauncherHandle(process, port)
238241

@@ -271,7 +274,7 @@ def docker_launcher(
271274

272275
gpu_count = num_shard if num_shard is not None else 1
273276

274-
env = {}
277+
env = {"LOG_LEVEL": "info,text_generation_router=debug"}
275278
if HUGGING_FACE_HUB_TOKEN is not None:
276279
env["HUGGING_FACE_HUB_TOKEN"] = HUGGING_FACE_HUB_TOKEN
277280

router/src/server.rs

Lines changed: 15 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -52,7 +52,7 @@ use utoipa_swagger_ui::SwaggerUi;
5252
example = json ! ({"error": "Incomplete generation"})),
5353
)
5454
)]
55-
#[instrument(skip(infer))]
55+
#[instrument(skip(infer, req))]
5656
async fn compat_generate(
5757
default_return_full_text: Extension<bool>,
5858
infer: Extension<Infer>,
@@ -133,8 +133,9 @@ async fn health(mut health: Extension<Health>) -> Result<(), (StatusCode, Json<E
133133
)
134134
)]
135135
#[instrument(
136-
skip(infer),
136+
skip_all,
137137
fields(
138+
parameters = ?req.0.parameters,
138139
total_time,
139140
validation_time,
140141
queue_time,
@@ -151,6 +152,8 @@ async fn generate(
151152
let start_time = Instant::now();
152153
metrics::increment_counter!("tgi_request_count");
153154

155+
tracing::debug!("Input: {}", req.0.inputs);
156+
154157
let compute_characters = req.0.inputs.chars().count();
155158
let mut add_prompt = None;
156159
if req.0.parameters.return_full_text.unwrap_or(false) {
@@ -282,7 +285,8 @@ async fn generate(
282285
output_text = prompt + &output_text;
283286
}
284287

285-
tracing::info!("Output: {}", output_text);
288+
tracing::debug!("Output: {}", output_text);
289+
tracing::info!("Success");
286290

287291
let response = GenerateResponse {
288292
generated_text: output_text,
@@ -315,8 +319,9 @@ async fn generate(
315319
)
316320
)]
317321
#[instrument(
318-
skip(infer),
322+
skip_all,
319323
fields(
324+
parameters = ?req.0.parameters,
320325
total_time,
321326
validation_time,
322327
queue_time,
@@ -336,6 +341,8 @@ async fn generate_stream(
336341
let start_time = Instant::now();
337342
metrics::increment_counter!("tgi_request_count");
338343

344+
tracing::debug!("Input: {}", req.0.inputs);
345+
339346
let compute_characters = req.0.inputs.chars().count();
340347

341348
let mut headers = HeaderMap::new();
@@ -370,6 +377,8 @@ async fn generate_stream(
370377
InferStreamResponse::Prefill(_) => {}
371378
// Yield event for every new token
372379
InferStreamResponse::Token(token) => {
380+
tracing::debug!(parent: &span, "Token: {:?}", token);
381+
373382
// StreamResponse
374383
let stream_token = StreamResponse {
375384
token,
@@ -428,7 +437,8 @@ async fn generate_stream(
428437
output_text = prompt + &output_text;
429438
}
430439

431-
tracing::info!(parent: &span, "Output: {}", output_text);
440+
tracing::debug!(parent: &span, "Output: {}", output_text);
441+
tracing::info!(parent: &span, "Success");
432442

433443
let stream_token = StreamResponse {
434444
token,

0 commit comments

Comments
 (0)