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 991DD1FF17A for ; Tue, 14 Oct 2025 23:21:50 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id 94543CC32; Tue, 14 Oct 2025 23:22:09 +0200 (CEST) To: pve-devel@lists.proxmox.com Date: Tue, 14 Oct 2025 21:36:08 +0200 MIME-Version: 1.0 Message-ID: List-Id: Proxmox VE development discussion List-Post: From: Davide Guerri via pve-devel Precedence: list Cc: Davide Guerri X-Mailman-Version: 2.1.29 X-BeenThere: pve-devel@lists.proxmox.com List-Subscribe: , List-Unsubscribe: , List-Archive: Reply-To: Proxmox VE development discussion List-Help: Subject: [pve-devel] [PATCH container 0/1] API endpoint to provide hardware sensor reading for Proxmox VE nodes. Content-Type: multipart/mixed; boundary="===============5706232323990344152==" Errors-To: pve-devel-bounces@lists.proxmox.com Sender: "pve-devel" --===============5706232323990344152== Content-Type: message/rfc822 Content-Disposition: inline Return-Path: X-Original-To: pve-devel@lists.proxmox.com Delivered-To: pve-devel@lists.proxmox.com Received: from firstgate.proxmox.com (firstgate.proxmox.com [212.224.123.68]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits)) (No client certificate requested) by lists.proxmox.com (Postfix) with ESMTPS id D22D3DD759 for ; Tue, 14 Oct 2025 23:22:08 +0200 (CEST) Received: from firstgate.proxmox.com (localhost [127.0.0.1]) by firstgate.proxmox.com (Proxmox) with ESMTP id B0DC9CA95 for ; Tue, 14 Oct 2025 23:21:38 +0200 (CEST) Received: from mail-wr1-x429.google.com (mail-wr1-x429.google.com [IPv6:2a00:1450:4864:20::429]) (using TLSv1.3 with cipher TLS_AES_128_GCM_SHA256 (128/128 bits) key-exchange X25519 server-signature RSA-PSS (2048 bits) server-digest SHA256) (No client certificate requested) by firstgate.proxmox.com (Proxmox) with ESMTPS for ; Tue, 14 Oct 2025 23:21:37 +0200 (CEST) Received: by mail-wr1-x429.google.com with SMTP id ffacd0b85a97d-4256866958bso3313882f8f.1 for ; Tue, 14 Oct 2025 14:21:37 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1760476891; x=1761081691; darn=lists.proxmox.com; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=n/WN9vuKCbAlKwqpYFJKAIogfSR+W6B6PPKt6HJI9ew=; b=lEoeaxWW/XLyxbPVxuYDYRLvfcEOR4MvGQWwq3ONji5m5FbL2nYIfCMCuglET+vQ/E fkazfvn/rBBCVgxLrWitaS7kPlIIPxJSFFRaR5JHaddox2p73jvsi5c+Sf996TpwqTS/ 1dHE9S+VW8QnNtMYwAYtVazUbN5occ5fv4/otj7VZzDJz4Xb6YQxxGGF2qtnaqv0AyWS 8I4wM5fv6eEDMK7e2WhkYaHhJRIMHcLFQQYNFMoS6p9l+c96yJTxa0HYiwMgIudylrsT VNNNFrMk7RS6Aj1w2Jr6lR9wlANq/diuWGfqMDjXn8Rc4dm8/vSUIkMl8fsGdtlnRqGm /q7g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1760476891; x=1761081691; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-message-state:from:to:cc:subject:date:message-id :reply-to; bh=n/WN9vuKCbAlKwqpYFJKAIogfSR+W6B6PPKt6HJI9ew=; b=L8xTV9g3WYNtd7TRRD9gdz4gE5Rx9KA+jAwAUV/m6hYu2rp3fY/AeeyKcy+O3r6Nam 3ZoZFkgy8b0yrVPWshHz00aldpa/vaxPFg+d51qdnPoiT7rUXUDOU0MhsNehvPXLLExX G9wIvYHof9EeEsUG3qKD0HS6JyOC4oq/lq7IrVjFrgPL0Mq5w5nHJznvhp2NtzQXrAYN x3y4t9tzLCkUCRVZEu3JYyLkfVmPDT9eZuRSETIZuMl080yHtdbpzM5YYv9q5VEN1iHc faXEcQPnl72VCMqhLuRpQABX1U/SoFAoYYxwfV8MFlPEyUM4/qukv54wGQ3ymAPNBdRr mivQ== X-Gm-Message-State: AOJu0YwGcyNkuicdZlIKXrfcLgQHkHw2FAzTDSBr5q7Tk+vWbeoiC8kw pvquonkA5kkd71GUaM8Cxeu6kZW8yjJ0pFdmus8W6VdBdIzpsVrLngx4KXWHIexA X-Gm-Gg: ASbGnctyWoxwJ32yzMNsWk0zAW/lL4y25qygZovOKhyQCmjghtYbZPKTg91MboC1xBC IWQfB734hqvxIjCJ39cF8Tt2yOHUA7FMj/Kpf9ohXOgU3C/7I6CRKI7i38K0cJZqxpwHFlTaXsw snN27LQ0hKHOQvTue9qwkv5Gqjng79Mkff77sXs2bsFwIN7H2KKLpBiC41BUyx+Smr1J2bh8RzJ gFliAsA7emCsiBjP4fXHlVRaDRtf80dlzH/KclQYi2deBV1JsE+f620HpbX2B2s/fg3BOTm8cOV dWQBG7hn9iVzKGOmt8Letl/6qg+wxa/Luo/ACAkWv2iuifUqIK3j+ptRRWLgb70G6BLcq/YFIWC Kue1gpHKpetD0vUAPN5ux0C34oglJ8Xr7A5GY2vrZDHthTZXrMAI7xvBY04PREuL3IfiVwSgEco uPNMuOhYz6IazcUAqG1eGDAyZMnNmpaHiRkDdaawjx7NU= X-Google-Smtp-Source: AGHT+IH9jZVosUYx0YisOaAsjCukLFhfukdViu9cc5TtvBDWcTncoNaXfPivWFiBa1jf/gdXRtnzLQ== X-Received: by 2002:a05:6000:26cc:b0:3dc:1a8c:e878 with SMTP id ffacd0b85a97d-42667177b8emr14702042f8f.18.1760476891283; Tue, 14 Oct 2025 14:21:31 -0700 (PDT) Received: from lechuck (host-79-43-235-239.retail.telecomitalia.it. [79.43.235.239]) by smtp.gmail.com with ESMTPSA id ffacd0b85a97d-426ce5825aasm25142601f8f.14.2025.10.14.14.21.29 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Tue, 14 Oct 2025 14:21:29 -0700 (PDT) Received: by lechuck.localdomain (Postfix, from userid 502) id EC9527527B25; Tue, 14 Oct 2025 21:36:10 +0200 (CEST) From: Davide Guerri To: pve-devel@lists.proxmox.com Subject: [PATCH container 0/1] API endpoint to provide hardware sensor reading for Proxmox VE nodes. Date: Tue, 14 Oct 2025 21:36:08 +0200 Message-ID: <20251014193609.34452-1-davide.guerri@gmail.com> X-Mailer: git-send-email 2.50.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-SPAM-LEVEL: Spam detection results: 0 AWL -0.150 Adjusted score from AWL reputation of From: address BAYES_00 -1.9 Bayes spam probability is 0 to 1% DKIM_SIGNED 0.1 Message has a DKIM or DK signature, not necessarily valid DKIM_VALID -0.1 Message has at least one valid DKIM or DK signature DKIM_VALID_AU -0.1 Message has a valid DKIM or DK signature from author's domain DKIM_VALID_EF -0.1 Message has a valid DKIM or DK signature from envelope-from domain DMARC_PASS -0.1 DMARC pass policy FREEMAIL_FROM 0.001 Sender email is commonly abused enduser mail provider 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_DNSWL_NONE -0.0001 Sender listed at https://www.dnswl.org/, no trust 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. [hardware.pm,sensors.pm] The endpoint exposes via the REST API to read real-time hardware sensor data from the system. Main functionality: - Temperature monitoring: Returns CPU, disk, and other temperature sensor readings in Celsius, including optional thresholds (max, critical) and core/package mappings for CPUs; - Fan speed monitoring: Returns fan speeds in RPM, along with optional min/max values, target speeds, and alarm status. This endpoint uses the PVE::SensorInfo module (submitted separately) to gather sensor data from the underlying system. It provides a hierarchical REST API at /nodes/{node}/hardware/sensors/ /sensors -> GET index (returns: temperature, fan) /temperature -> GET index (returns: cpu, disk, other) /cpu -> GET CPU temperature data /disk -> GET disk temperature data /other -> GET other temperature data /fan -> GET fan speed data Davide Guerri (1): api: add hardware sensors endpoint and API support PVE/API2/Hardware.pm | 8 +- PVE/API2/Hardware/Makefile | 1 + PVE/API2/Hardware/Sensors.pm | 420 +++++++++++++++++++++++++++++++++++ 3 files changed, 428 insertions(+), 1 deletion(-) create mode 100644 PVE/API2/Hardware/Sensors.pm -- 2.50.1 (Apple Git-155) --===============5706232323990344152== Content-Type: text/plain; charset="us-ascii" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Disposition: inline _______________________________________________ pve-devel mailing list pve-devel@lists.proxmox.com https://lists.proxmox.com/cgi-bin/mailman/listinfo/pve-devel --===============5706232323990344152==--