From 7d2b0d6afdd5941b2eaf1e0383e82b14655a2405 Mon Sep 17 00:00:00 2001 From: Stefan Sterz Date: Thu, 9 Feb 2023 12:41:39 +0100 Subject: [PATCH] fix #4521: api/tasks: replace upid as filename for task log downloads previously the upid would just be used without a file extension when downloading a task log. this lead to rather strange filenames that appeared unfamiliar to users as the upid is not very prevalent in the gui. set a proper file name based on the node name, worker type and a time stamp instead. also add the ".log" file extension to indicate that these files contain logs. Signed-off-by: Stefan Sterz --- src/api2/node/tasks.rs | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/src/api2/node/tasks.rs b/src/api2/node/tasks.rs index 0f43aaf4..866361c6 100644 --- a/src/api2/node/tasks.rs +++ b/src/api2/node/tasks.rs @@ -341,7 +341,12 @@ fn read_task_log( bail!("Parameter 'download' cannot be used with other parameters"); } - let header_disp = format!("attachment; filename={}", &upid.to_string()); + let header_disp = format!( + "attachment; filename=task-{}-{}-{}.log", + upid.node, + upid.worker_type, + proxmox_time::epoch_to_rfc3339_utc(upid.starttime)? + ); let stream = AsyncReaderStream::new(tokio::fs::File::open(path).await?); return Ok(Response::builder()