From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from firstgate.proxmox.com (firstgate.proxmox.com [IPv6:2a01:7e0:0:424::9]) by lore.proxmox.com (Postfix) with ESMTPS id 04F2A1FF165 for ; Thu, 17 Jul 2025 18:49:22 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 0B3EF92AD; Thu, 17 Jul 2025 18:50:25 +0200 (CEST) From: Friedrich Weber To: pve-devel@lists.proxmox.com Date: Thu, 17 Jul 2025 18:50:01 +0200 Message-ID: <20250717165006.106126-1-f.weber@proxmox.com> X-Mailer: git-send-email 2.47.2 MIME-Version: 1.0 X-Bm-Milter-Handled: 55990f41-d878-4baa-be0a-ee34c49e34d2 X-Bm-Transport-Timestamp: 1752771019456 X-SPAM-LEVEL: Spam detection results: 0 AWL -0.138 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DMARC_MISSING 0.1 Missing DMARC policy KAM_DMARC_STATUS 0.01 Test Rule for DKIM or SPF Failure with Strict Alignment POISEN_SPAM_PILL 0.1 Meta: its spam POISEN_SPAM_PILL_1 0.1 random spam to be learned in bayes POISEN_SPAM_PILL_3 0.1 random spam to be learned in bayes RCVD_IN_VALIDITY_CERTIFIED_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_RPBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. RCVD_IN_VALIDITY_SAFE_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to Validity was blocked. See https://knowledge.validity.com/hc/en-us/articles/20961730681243 for more information. SPF_HELO_NONE 0.001 SPF: HELO does not publish an SPF Record SPF_PASS -0.001 SPF: sender matches SPF record URIBL_BLOCKED 0.001 ADMINISTRATOR NOTICE: The query to URIBL was blocked. See http://wiki.apache.org/spamassassin/DnsBlocklists#dnsbl-block for more information. [tools.pm] Subject: [pve-devel] [PATCH common] tools: dump logfile: fix result type in case the file cannot be opened X-BeenThere: pve-devel@lists.proxmox.com X-Mailman-Version: 2.1.29 Precedence: list List-Id: Proxmox VE development discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-To: Proxmox VE development discussion Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" The second return value of dump_logfile should be a reference to an array of hash references (one per log line), but in case the file cannot be opened, it currently directly returns a reference to a hash. As a result, the /nodes/{node}/tasks/{upid}/log endpoint response does not match the schema in case the task log cannot be opened (for example, does not exist). This was reported in enterprise support, as it trips up external monitoring tools that query this endpoint. To fix this, make sure to return an array. This technically also affects the endpoints that query the Ceph, replication, and firewall logs, though there it is more likely that the logfile actually exists and can be opened. Signed-off-by: Friedrich Weber --- Notes: proxmox-perltidy makes a small formatting change (to pre-existing code in Tools.pm) that I didn't include here. src/PVE/Tools.pm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/PVE/Tools.pm b/src/PVE/Tools.pm index 948ef5e..fe9616e 100644 --- a/src/PVE/Tools.pm +++ b/src/PVE/Tools.pm @@ -1426,7 +1426,7 @@ sub dump_logfile { my $fh = IO::File->new($filename, "r"); if (!$fh) { - return (1, { n => 1, t => "unable to open file - $!" }); + return (1, [{ n => 1, t => "unable to open file - $!" }]); } my %state = ( -- 2.47.2 _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel