From 63a0d188130f3be97bd78aeeb7321de63412ca59 Mon Sep 17 00:00:00 2001 From: Alicia Sykes Date: Sat, 15 Jan 2022 21:30:43 +0000 Subject: [PATCH] :sparkles: Adds a disk IO widget --- docs/widgets.md | 18 ++++ src/components/Widgets/GlDiskIo.vue | 127 ++++++++++++++++++++++++++ src/components/Widgets/WidgetBase.vue | 8 ++ 3 files changed, 153 insertions(+) create mode 100644 src/components/Widgets/GlDiskIo.vue diff --git a/docs/widgets.md b/docs/widgets.md index 357b104e..74f3b349 100644 --- a/docs/widgets.md +++ b/docs/widgets.md @@ -48,6 +48,8 @@ Dashy has support for displaying dynamic content in the form of widgets. There a - [CPU Usage History](#cpu-usage-history) - [Memory Usage Current](#current-memory-usage) - [Memory Usage History](#memory-usage-history) + - [Disk Space](#disk-space) + - [Disk IO](#disk-io) - [Dynamic Widgets](#dynamic-widgets) - [Iframe Widget](#iframe-widget) - [HTML Embed Widget](#html-embedded-widget) @@ -1298,6 +1300,22 @@ List connected disks, showing free / used space and other info (file system, mou --- +### Disk IO + +Shows real-time read and write speeds and operations per sec for each disk + +

+ +##### Example + +```yaml +- type: gl-disk-io + options: + hostname: http://192.168.130.2:61208 +``` + +--- + ## Dynamic Widgets ### Iframe Widget diff --git a/src/components/Widgets/GlDiskIo.vue b/src/components/Widgets/GlDiskIo.vue new file mode 100644 index 00000000..75c1ab79 --- /dev/null +++ b/src/components/Widgets/GlDiskIo.vue @@ -0,0 +1,127 @@ + + + + + diff --git a/src/components/Widgets/WidgetBase.vue b/src/components/Widgets/WidgetBase.vue index 7ee6b551..25611792 100644 --- a/src/components/Widgets/WidgetBase.vue +++ b/src/components/Widgets/WidgetBase.vue @@ -130,6 +130,13 @@ @error="handleError" :ref="widgetRef" /> + import('@/components/Widgets/GlCpuCores.vue'), GlCpuGauge: () => import('@/components/Widgets/GlCpuGauge.vue'), GlCpuHistory: () => import('@/components/Widgets/GlCpuHistory.vue'), + GlDiskIo: () => import('@/components/Widgets/GlDiskIo.vue'), GlDiskSpace: () => import('@/components/Widgets/GlDiskSpace.vue'), GlMemGauge: () => import('@/components/Widgets/GlMemGauge.vue'), GlMemHistory: () => import('@/components/Widgets/GlMemHistory.vue'),