Synology widget : adding volume size

This commit is contained in:
Benoit 2023-01-11 21:59:46 +01:00
parent 6759aec51e
commit 977965babb
3 changed files with 7 additions and 4 deletions

View File

@ -418,7 +418,8 @@
"volumeUsage": "Volume Usage",
"cpuLoad": "CPU Load",
"memoryUsage": "Memory Usage",
"status": "Status"
"status": "Status",
"volumeTotal": "Total space"
},
"opnsense": {
"cpu": "CPU Load",

View File

@ -20,6 +20,7 @@ export default function Component({ service }) {
<Container service={service}>
<Block label="synology.uptime" />
<Block label="synology.volumeUsage" />
<Block label="synology.volumeTotal" />
<Block label="synology.cpuLoad" />
<Block label="synology.memoryUsage" />
</Container>
@ -31,6 +32,7 @@ export default function Component({ service }) {
<Container service={service}>
<Block label="synology.uptime" value={ dsData.uptime } />
<Block label="synology.volumeUsage" value={t("common.percent", { value: dsData.usedVolume })} />
<Block label="synology.volumeTotal" value={t("common.bytes", { value: dsData.totalSize })} />
<Block label="synology.cpuLoad" value={t("common.percent", { value: dsData.cpuLoad })} />
<Block label="synology.memoryUsage" value={t("common.percent", { value: dsData.memoryUsage })} />
</Container>

View File

@ -76,8 +76,6 @@ export default async function synologyProxyHandler(req, res) {
[status, contentType, data] = await httpProxy(storageUrl );
let usedVolume = 0;
if (status !== 200) {
return res.status(status).set("Content-Type", contentType).send(data);
}
@ -85,7 +83,8 @@ export default async function synologyProxyHandler(req, res) {
if (json?.success !== true) {
return res.status(401).json({ error: "Error getting volume stats" });
}
usedVolume = 100 * parseFloat(json.data.vol_info[0].used_size) / parseFloat(json.data.vol_info[0].total_size);
const totalSize = parseFloat(json.data.vol_info[0].total_size);
const usedVolume = 100 * parseFloat(json.data.vol_info[0].used_size) / parseFloat(json.data.vol_info[0].total_size);
const healthUrl = `${widget.url}/webapi/${path}?api=${api}&version=${maxVersion}&method=info&_sid=${sid}`;
[status, contentType, data] = await httpProxy(healthUrl);
@ -110,6 +109,7 @@ export default async function synologyProxyHandler(req, res) {
const resdata = {
uptime,
usedVolume,
totalSize,
memoryUsage,
cpuLoad,
}