From 33d5f9f3ea22b1b09647296ead92132e77fa8d8f Mon Sep 17 00:00:00 2001 From: Russell Troxel Date: Tue, 11 Apr 2023 09:30:51 -0700 Subject: [PATCH] Fix #148: Disk Metrics come back from the API in GB (#149) Signed-off-by: Russell Troxel --- internal/sabnzbd/model/model.go | 9 +++++---- internal/sabnzbd/model/model_test.go | 8 ++++---- internal/sabnzbd/test_fixtures/expected_metrics.txt | 8 ++++---- 3 files changed, 13 insertions(+), 12 deletions(-) diff --git a/internal/sabnzbd/model/model.go b/internal/sabnzbd/model/model.go index b372360..88664ea 100644 --- a/internal/sabnzbd/model/model.go +++ b/internal/sabnzbd/model/model.go @@ -15,6 +15,7 @@ type Status int const ( KB = 1024 MB = 1024 * KB + GB = 1024 * MB ) const ( @@ -152,10 +153,10 @@ func (q *QueueStats) UnmarshalJSON(data []byte) error { return fmt.Errorf("Error parsing queue stats: %w", err) } - q.DownloadDirDiskspaceUsed *= MB - q.DownloadDirDiskspaceTotal *= MB - q.CompletedDirDiskspaceUsed *= MB - q.CompletedDirDiskspaceTotal *= MB + q.DownloadDirDiskspaceUsed *= GB + q.DownloadDirDiskspaceTotal *= GB + q.CompletedDirDiskspaceUsed *= GB + q.CompletedDirDiskspaceTotal *= GB q.Speed *= KB q.RemainingSize *= MB q.Size *= MB diff --git a/internal/sabnzbd/model/model_test.go b/internal/sabnzbd/model/model_test.go index c238eb7..1cc8991 100644 --- a/internal/sabnzbd/model/model_test.go +++ b/internal/sabnzbd/model/model_test.go @@ -58,10 +58,10 @@ func TestQueueStats_UnmarshalJSON(t *testing.T) { require.False(queueStats.Paused) require.False(queueStats.PausedAll) require.Equal(time.Duration(0), queueStats.PauseDuration) - require.Equal(3.64627623936e+10, queueStats.DownloadDirDiskspaceUsed) - require.Equal(4.4971327488e+10, queueStats.DownloadDirDiskspaceTotal) - require.Equal(3.64061392896e+10, queueStats.CompletedDirDiskspaceUsed) - require.Equal(4.4972376064e+10, queueStats.CompletedDirDiskspaceTotal) + require.Equal(3.73378686910464e+13, queueStats.DownloadDirDiskspaceUsed) + require.Equal(4.6050639347712e+13, queueStats.DownloadDirDiskspaceTotal) + require.Equal(3.72798866325504e+13, queueStats.CompletedDirDiskspaceUsed) + require.Equal(4.6051713089536e+13, queueStats.CompletedDirDiskspaceTotal) require.Equal(100.0, queueStats.SpeedLimit) require.Equal(1.048576e+09, queueStats.SpeedLimitAbs) require.Equal(0.0, queueStats.HaveWarnings) diff --git a/internal/sabnzbd/test_fixtures/expected_metrics.txt b/internal/sabnzbd/test_fixtures/expected_metrics.txt index 9e8211b..8f43dea 100644 --- a/internal/sabnzbd/test_fixtures/expected_metrics.txt +++ b/internal/sabnzbd/test_fixtures/expected_metrics.txt @@ -6,12 +6,12 @@ sabnzbd_article_cache_articles{target="http://127.0.0.1:39965"} 0 sabnzbd_article_cache_bytes{target="http://127.0.0.1:39965"} 0 # HELP sabnzbd_disk_total_bytes Total Bytes on the SabnzbD instance's disk # TYPE sabnzbd_disk_total_bytes gauge -sabnzbd_disk_total_bytes{folder="complete",target="http://127.0.0.1:39965"} 4.4972376064e+10 -sabnzbd_disk_total_bytes{folder="download",target="http://127.0.0.1:39965"} 4.4971327488e+10 +sabnzbd_disk_total_bytes{folder="complete",target="http://127.0.0.1:39965"} 4.6051713089536e+13 +sabnzbd_disk_total_bytes{folder="download",target="http://127.0.0.1:39965"} 4.6050639347712e+13 # HELP sabnzbd_disk_used_bytes Used Bytes Used on the SabnzbD instance's disk # TYPE sabnzbd_disk_used_bytes gauge -sabnzbd_disk_used_bytes{folder="complete",target="http://127.0.0.1:39965"} 3.64061392896e+10 -sabnzbd_disk_used_bytes{folder="download",target="http://127.0.0.1:39965"} 3.64627623936e+10 +sabnzbd_disk_used_bytes{folder="complete",target="http://127.0.0.1:39965"} 3.72798866325504e+13 +sabnzbd_disk_used_bytes{folder="download",target="http://127.0.0.1:39965"} 3.73378686910464e+13 # HELP sabnzbd_downloaded_bytes Total Bytes Downloaded by SABnzbd # TYPE sabnzbd_downloaded_bytes counter sabnzbd_downloaded_bytes{target="http://127.0.0.1:39965"} 5.869995742788e+12