Git Product home page Git Product logo

dashdot's People

Contributors

arghyadipchak avatar caesay avatar cyneath avatar dependabot[bot] avatar github-actions[bot] avatar manuel-rw avatar mauricenino avatar oben01 avatar rafazafar avatar renovate-bot avatar renovate[bot] avatar samirmokiem avatar semantic-release-bot avatar victor333huesca avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

dashdot's Issues

Better documentation on editing/configuring dashdot variables

Describe the solution you'd like
Better documentation of when to use which variables, and how they translate in the frontend.

Additional context
Original (from #36) by @heyiamsven:

For me it is (specially as Docker beginner) a little bit hard to understand how I can change the variables/configuration of dashdot in general. [...] It is also a little bit unclear to me in which order of magnitude I have to write the number of the storage size with DASHDOT_OVERRIDE_STORAGE_SIZE_[1-5] out .. Does dashdot accept just i.e. 128gb as value or do I have to write it out in megabyte/kilobyte/etc..?

Add the ability to manage multiple servers from a single place

Is your feature request related to a problem? Please describe.
Currently, you can only view the stats of the current server where the service (docker in my case) is installed and running.

Describe the solution you'd like
I think that allowing to manage the stats of more thatn a single server, from a single instance, would be a huge improvement.
These are my ideas:
A. Allow to register other Dash. instances inside the current one. So, you can jump from one server to the other.
B. Create a separate service to allow managing different Dash. instances, all from a single place.

I think, the 'B' would be better, as you will only need to install only one copy. Then you add the rest of the Dash. running services inside it. Like, a Dashboard to manage and view other Dashboards.
Also, it would show a reduced version of every running Dash. instance, I mean, only showing very basic information from every server, so you can click on them to access every full Dash. dashboard.

Maybe calling them as:

  • Dashdot (server stats)
  • Dashdot Central (manage and view all Dashdot instances)

Thank you.

[Feature] Show Percentages of each drive used

Description of the feature

It would be cool to see the percentage used of each drive. Either by hovering or having a data point like the processor percentage.

This could also be shown by having a toggle like the processor for each core, but for each drive.

Additional context

No response

[Bug] Strange memory usage

Description of the bug

Memory usage in Dashdot : 11GB
Memory usage in free: 10GB
Memory usage in top: 73MB (but actually around 10GB)
Memory usage in htop: 3.5GB

Free and top take into account the buffer and cache, and I guess Dashdot uses similar tools.

htop shows the actual memory being used (since buffered and cached memory are reserved by the OS and not really used, from what I understand at least).

I feel like it would be more useful to display the actual memory being used, like htop does (RES and not VIRT/SHR).

Here is an interesting article I've found, hope it helps in some way
https://peteris.rocks/blog/htop/
WindowsTerminal_O3hSYRUyrs
WindowsTerminal_YoEp9nOBCH
WindowsTerminal_HQqD2Cwvqb

[Feature] Show percentages only on mobile view

Description of the feature

The percentages on the top left take away from the clean look of Dash. It would be better if they are only shown on mobile (because there it is harder to actually hover the graph).

Additional context

Tasks:

  • Show percentages only on mobile
  • Show percentages in storage graph on hover
  • Add option DASHDOT_ALWAYS_SHOW_PERCENTAGE to go back to the old behavior
  • Don't show the percentages in integrations by default - let the integration decide what they want
  • Update the screenshot in the documentation and README

[Feature] Increasing the Update Speed of the Statistics

Description of the feature

I would like to increase the updating frequency of the statistics on the dashboard. If I'm not mistaken, it's around 1 second, which feels very choppy and slow.

Additional context

No response

[Bug] Free Storage space not shown

Description of the bug

Hello again,

I wanted to report that dashdot is unable to show my free storage space in the pie chart. I have this issue since I started using dashdot, so it wasn't introduced with the last updates.

Image of the issue:
https://abload.de/img/storage_dashdotjsj1m.png

Im starting dashdot with:

docker container run -d -it
-p 3001:3001
-v /etc/os-release:/etc/os-release:ro
-v /proc/1/ns/net:/mnt/host_ns_net:ro
--privileged
--env DASHDOT_OVERRIDE_STORAGE_SIZE_1="137438953472"
--env DASHDOT_OVERRIDE_STORAGE_BRAND_1="SanDisk"
--env DASHDOT_OVERRIDE_STORAGE_TYPE_1="MicroSD"
--env DASHDOT_OVERRIDE_RAM_TYPE="DDR4"
--env DASHDOT_OVERRIDE_RAM_FREQUENCY="2133"
--env DASHDOT_OVERRIDE_CPU_BRAND="ARM"
--env DASHDOT_OVERRIDE_CPU_MODEL="S922X"
--env DASHDOT_OVERRIDE_OS="armbian"
--env DASHDOT_OVERRIDE_RAM_BRAND="Hardkernel"
--env DASHDOT_ENABLE_CPU_TEMPS="true"
--env DASHDOT_NETWORK_WIDGET_ENABLE="false"
--name dashdot
mauricenino/dashdot

How to reproduce

No response

Relevant log output

What browsers are you seeing the problem on?

Chrome

Where is your instance running?

Other (Please specify below)

Additional context

Odroid N2+

[Bug] OS release not showing correctly for Arch Linux

Description of the bug

My OS shows as Arch Linux unknown where it should be Arch Linux rolling.
When testing the output of systeminformation directly, platform shows as rolling. Seems like the release info is not read properly.

How to reproduce

Just use arch btw, (No, honestly. I've tested it in a seperate vm and it also says unknown.)

Relevant log output

dashdot log:

dashdot-dash-1  | 2022-06-12T08:30:17.573425224Z   os: {
dashdot-dash-1  | 2022-06-12T08:30:17.573429304Z     arch: 'x64',
dashdot-dash-1  | 2022-06-12T08:30:17.573433384Z     distro: 'Arch Linux',
dashdot-dash-1  | 2022-06-12T08:30:17.573436724Z     kernel: '5.18.3-arch1-1',
dashdot-dash-1  | 2022-06-12T08:30:17.573440004Z     platform: 'linux',
dashdot-dash-1  | 2022-06-12T08:30:17.573442834Z     release: 'unknown',
dashdot-dash-1  | 2022-06-12T08:30:17.573446084Z     uptime: 85800.52
dashdot-dash-1  | 2022-06-12T08:30:17.573449004Z   }

systeminformation output:

{
  platform: 'linux',
  distro: 'Arch',
  release: 'rolling',
  codename: '',
  kernel: '5.18.3-arch1-1',
  arch: 'x64',
  hostname: 'arch',
  fqdn: [Function: __node_internal_checkError] {
    [Symbol(Symbol.toPrimitive)]: [Function (anonymous)]
}

What browsers are you seeing the problem on?

Firefox, Chrome, Safari, Microsoft Edge

Where is your instance running?

Desktop PC (Linux)

Additional context

No response

[Feature] Allow integrations to dash.

Description of the feature

Dash. handles a lot of the overhead when querying system information through docker and displays all that in some charts. Other projects (like https://github.com/ajnart/homarr/) may want to simply include those, instead of going through the hassle of re-implementing everything.

Additional context

  • Create URL options, that allow to view a single chart with no surroundings
  • Create an API endpoint, that allows to query the config
  • Create a doc, that details on how to include dash. charts in your page

Blank page - Cannot read properties of undefined (reading 'brand')

Hey,

I'm trying to run dashdot with docker on my Odroid N2+ running Armbian. I've tried this command:

docker container run -it
-p 80:3001
--privileged
--name dashdot
mauricenino/dashdot

However if I visit the dashdot overview page it's in a completely blank state. If I inspect the webpage it spits out those errors:

TypeError: Cannot read properties of undefined (reading 'brand')
at Qn (storage.tsx:45:64)
at ia (react-dom.production.min.js:157:137)
at Vc (react-dom.production.min.js:267:460)
at zu (react-dom.production.min.js:250:347)
at ju (react-dom.production.min.js:250:278)
at ku (react-dom.production.min.js:250:138)
at mu (react-dom.production.min.js:243:163)
at react-dom.production.min.js:123:115
at t.unstable_runWithPriority (scheduler.production.min.js:18:343)
at qi (react-dom.production.min.js:122:325)
cc @ react-dom.production.min.js:216
DevTools failed to load source map: Could not load content for chrome-extension://dndehlekllfkaijdlokmmicgnlanfjbi/common/lib/browser-polyfill.js.map: System error: net::ERR_BLOCKED_BY_CLIENT

Log (from executing docker run):

yarn run v1.22.18
$ (cd ./backend && yarn start)
$ node .
listening on *:3001
Static Server Info: {
os: {
arch: 'arm64',
distro: 'Alpine Linux',
kernel: '5.10.103-meson64',
platform: 'linux',
release: '3.15.4',
uptime: 97630.84
},
cpu: {
brand: 'Cortex-A53',
model: '',
cores: 6,
threads: 6,
frequency: 2.27
},
ram: {
size: 3967762432,
layout: [ { brand: undefined, type: '', frequency: 0 } ]
},
storage: { layout: [] },
config: {
port: 3001,
disable_tilt: false,
disable_host: false,
os_widget_enable: true,
os_widget_grow: 1,
cpu_widget_enable: true,
cpu_widget_grow: 2,
cpu_shown_datapoints: 20,
cpu_poll_interval: 1000,
ram_widget_enable: true,
ram_widget_grow: 1.5,
ram_shown_datapoints: 20,
ram_poll_interval: 1000,
storage_widget_enable: true,
storage_widget_grow: 1.5,
storage_poll_interval: 60000,
override: {
os: undefined,
arch: undefined,
cpu_brand: undefined,
cpu_model: undefined,
cpu_cores: undefined,
cpu_threads: undefined,
cpu_frequency: undefined,
ram_brand: undefined,
ram_size: undefined,
ram_type: undefined,
ram_frequency: undefined,
storage_brand_1: undefined,
storage_size_1: undefined,
storage_type_1: undefined,
storage_brand_2: undefined,
storage_size_2: undefined,
storage_type_2: undefined,
storage_brand_3: undefined,
storage_size_3: undefined,
storage_type_3: undefined,
storage_brand_4: undefined,
storage_size_4: undefined,
storage_type_4: undefined,
storage_brand_5: undefined,
storage_size_5: undefined,
storage_type_5: undefined
}
}
}

It would be great if you could explain me what I'm doing wrong, for me it looks like that the variable 'brand' is empty and causing errors.

I'm also very new to docker and I would like to know if there is any *.env-config file I can edit + how I can configure dashdot to automatically start after system boot.

[Feature] Automatically refresh when speed test was run

Description of the feature

Currently, until the speed test is run, up and down speed are both marked as / on the frontend. This only changes on a hard refresh of the page.

Additional context

We could use sockets for that "static" information as well - that way, when any changes happen, we can just propagate those directly into the view.

[Bug] Temperature not showing on Raspberry Pi4

Description of the bug

If I remember correctly in an earlier release the temp was displayed, but its not working with the latest image on RPI4
Bildschirmfoto 2022-06-08 um 23 12 05

How to reproduce

No response

Relevant log output

No response

What browsers are you seeing the problem on?

Safari

Where is your instance running?

Raspberry Pi

Additional context

No response

Design flaw with 4+ drives

Hey there,

As I've noticed after setting up this dashboard, when I added 3 drives to my server, they showed up outside of the border of the 'panel'.

Here is a screenshot with the problem: https://prnt.sc/g7vnwKuHeooq.

I hope this problem can be fixed. As I don't know any solution, I didn't make a PR.

Also some other minor details are that the CPU threads show up as cores. On my 2700X it shows to have 16 cores whilst it has 8 cores with Hyperthreading/SMT.

Cheers!

  • Ahwx

[Feature] Make labels and order configurable

Description of the feature

All labels should be configurable & be optionally enabled/disabled, as well as change the order of them.

This could be done similarly to DASHDOT_WIDGET_ORDER.

[Bug] dash. thinks a ram stick is a drive

Description of the bug

I am running dash. on Synology NAS / docker / latest.

Dash. things one ram stick is a hard drive. See the below picture - Drive 9 is not a actual drive in the NAS and the system has 32 GB ram installed.

Screenshot 2022-05-25 050329

How to reproduce

No response

Relevant log output

mauricenino-dashdot
date	stream	content
2022-05-25T12:02:50.434094449Z	stdout	}
2022-05-25T12:02:50.434073909Z	stdout	  }
2022-05-25T12:02:50.434053439Z	stdout	    }
2022-05-25T12:02:50.434030449Z	stdout	      storage_type_5: �[90mundefined�[39m
2022-05-25T12:02:50.434006359Z	stdout	      storage_size_5: �[90mundefined�[39m,
2022-05-25T12:02:50.433981189Z	stdout	      storage_brand_5: �[90mundefined�[39m,
2022-05-25T12:02:50.433957558Z	stdout	      storage_type_4: �[90mundefined�[39m,
2022-05-25T12:02:50.433934538Z	stdout	      storage_size_4: �[90mundefined�[39m,
2022-05-25T12:02:50.433910828Z	stdout	      storage_brand_4: �[90mundefined�[39m,
2022-05-25T12:02:50.433888338Z	stdout	      storage_type_3: �[90mundefined�[39m,
2022-05-25T12:02:50.433865108Z	stdout	      storage_size_3: �[90mundefined�[39m,
2022-05-25T12:02:50.433840998Z	stdout	      storage_brand_3: �[90mundefined�[39m,
2022-05-25T12:02:50.433816278Z	stdout	      storage_type_2: �[90mundefined�[39m,
2022-05-25T12:02:50.433792288Z	stdout	      storage_size_2: �[90mundefined�[39m,
2022-05-25T12:02:50.433768258Z	stdout	      storage_brand_2: �[90mundefined�[39m,
2022-05-25T12:02:50.433744988Z	stdout	      storage_type_1: �[90mundefined�[39m,
2022-05-25T12:02:50.433719768Z	stdout	      storage_size_1: �[90mundefined�[39m,
2022-05-25T12:02:50.433685117Z	stdout	      storage_brand_1: �[90mundefined�[39m,
2022-05-25T12:02:50.433642257Z	stdout	      ram_frequency: �[90mundefined�[39m,
2022-05-25T12:02:50.433606807Z	stdout	      ram_type: �[90mundefined�[39m,
2022-05-25T12:02:50.433572757Z	stdout	      ram_size: �[90mundefined�[39m,
2022-05-25T12:02:50.433540547Z	stdout	      ram_brand: �[90mundefined�[39m,
2022-05-25T12:02:50.433514087Z	stdout	      cpu_frequency: �[90mundefined�[39m,
2022-05-25T12:02:50.433479507Z	stdout	      cpu_threads: �[90mundefined�[39m,
2022-05-25T12:02:50.433438297Z	stdout	      cpu_cores: �[90mundefined�[39m,
2022-05-25T12:02:50.433414547Z	stdout	      cpu_model: �[90mundefined�[39m,
2022-05-25T12:02:50.433390606Z	stdout	      cpu_brand: �[90mundefined�[39m,
2022-05-25T12:02:50.433367136Z	stdout	      arch: �[90mundefined�[39m,
2022-05-25T12:02:50.433343006Z	stdout	      os: �[90mundefined�[39m,
2022-05-25T12:02:50.433320476Z	stdout	    override: {
2022-05-25T12:02:50.433296736Z	stdout	    storage_poll_interval: �[33m60000�[39m,
2022-05-25T12:02:50.433271176Z	stdout	    storage_widget_grow: �[33m1.5�[39m,
2022-05-25T12:02:50.433247216Z	stdout	    storage_widget_enable: �[33mtrue�[39m,
2022-05-25T12:02:50.433223016Z	stdout	    ram_poll_interval: �[33m1000�[39m,
2022-05-25T12:02:50.433199766Z	stdout	    ram_shown_datapoints: �[33m20�[39m,
2022-05-25T12:02:50.433173156Z	stdout	    ram_widget_grow: �[33m1.5�[39m,
2022-05-25T12:02:50.433147236Z	stdout	    ram_widget_enable: �[33mtrue�[39m,
2022-05-25T12:02:50.433122976Z	stdout	    cpu_poll_interval: �[33m1000�[39m,
2022-05-25T12:02:50.433098035Z	stdout	    cpu_shown_datapoints: �[33m20�[39m,
2022-05-25T12:02:50.433073795Z	stdout	    cpu_widget_grow: �[33m2�[39m,
2022-05-25T12:02:50.433049655Z	stdout	    cpu_widget_enable: �[33mtrue�[39m,
2022-05-25T12:02:50.433025725Z	stdout	    enable_cpu_temps: �[33mfalse�[39m,
2022-05-25T12:02:50.432998905Z	stdout	    os_widget_grow: �[33m1�[39m,
2022-05-25T12:02:50.432974985Z	stdout	    os_widget_enable: �[33mtrue�[39m,
2022-05-25T12:02:50.432950425Z	stdout	    disable_host: �[33mfalse�[39m,
2022-05-25T12:02:50.432923285Z	stdout	    widget_order: �[32m'os,cpu,ram,storage'�[39m,
2022-05-25T12:02:50.432898555Z	stdout	    enable_tilt: �[33mtrue�[39m,
2022-05-25T12:02:50.432873765Z	stdout	    port: �[33m3001�[39m,
2022-05-25T12:02:50.432850815Z	stdout	  config: {
2022-05-25T12:02:50.432826845Z	stdout	  },
2022-05-25T12:02:50.432804834Z	stdout	    ]
2022-05-25T12:02:50.432776784Z	stdout	      { brand: �[32m'Samsung'�[39m, size: �[33m256060514304�[39m, type: �[32m'NVMe'�[39m }
2022-05-25T12:02:50.432746184Z	stdout	      { brand: �[32m'Samsung'�[39m, size: �[33m256060514304�[39m, type: �[32m'NVMe'�[39m },
2022-05-25T12:02:50.432712984Z	stdout	      { brand: �[32m'Synology'�[39m, size: �[33m125829120�[39m, type: �[32m'HD'�[39m },
2022-05-25T12:02:50.432684194Z	stdout	      { brand: �[32m'Western Digital'�[39m, size: �[33m12000138625024�[39m, type: �[32m'HD'�[39m },
2022-05-25T12:02:50.432651984Z	stdout	      { brand: �[32m'Western Digital'�[39m, size: �[33m12000138625024�[39m, type: �[32m'HD'�[39m },
2022-05-25T12:02:50.432623214Z	stdout	      { brand: �[32m'Western Digital'�[39m, size: �[33m12000138625024�[39m, type: �[32m'HD'�[39m },
2022-05-25T12:02:50.432593074Z	stdout	      { brand: �[32m'Western Digital'�[39m, size: �[33m12000138625024�[39m, type: �[32m'HD'�[39m },
2022-05-25T12:02:50.432563644Z	stdout	      { brand: �[32m'Western Digital'�[39m, size: �[33m12000138625024�[39m, type: �[32m'HD'�[39m },
2022-05-25T12:02:50.432525844Z	stdout	      { brand: �[32m'Western Digital'�[39m, size: �[33m12000138625024�[39m, type: �[32m'HD'�[39m },
2022-05-25T12:02:50.432409133Z	stdout	      { brand: �[32m'Western Digital'�[39m, size: �[33m12000138625024�[39m, type: �[32m'HD'�[39m },
2022-05-25T12:02:50.432375873Z	stdout	      { brand: �[32m'Western Digital'�[39m, size: �[33m12000138625024�[39m, type: �[32m'HD'�[39m },
2022-05-25T12:02:50.432353373Z	stdout	    layout: [
2022-05-25T12:02:50.432329873Z	stdout	  storage: {
2022-05-25T12:02:50.432307523Z	stdout	  },
2022-05-25T12:02:50.432284513Z	stdout	    ]
2022-05-25T12:02:50.432255073Z	stdout	      { brand: �[32m'066D'�[39m, type: �[32m'DDR4'�[39m, frequency: �[33m2667�[39m }
2022-05-25T12:02:50.432210182Z	stdout	      { brand: �[32m'066D'�[39m, type: �[32m'DDR4'�[39m, frequency: �[33m2667�[39m },
2022-05-25T12:02:50.432182102Z	stdout	    layout: [
2022-05-25T12:02:50.432153772Z	stdout	    size: �[33m16744218624�[39m,
2022-05-25T12:02:50.432122092Z	stdout	  ram: {
2022-05-25T12:02:50.432100462Z	stdout	  },
2022-05-25T12:02:50.432071092Z	stdout	    frequency: �[33m2.2�[39m
2022-05-25T12:02:50.432045172Z	stdout	    threads: �[33m8�[39m,
2022-05-25T12:02:50.432020412Z	stdout	    cores: �[33m4�[39m,
2022-05-25T12:02:50.431991892Z	stdout	    model: �[32m'Ryzen Embedded V1500B'�[39m,
2022-05-25T12:02:50.431965912Z	stdout	    brand: �[32m'AMD'�[39m,
2022-05-25T12:02:50.431943982Z	stdout	  cpu: {
2022-05-25T12:02:50.431922621Z	stdout	  },
2022-05-25T12:02:50.431896111Z	stdout	    uptime: �[33m851860.51�[39m
2022-05-25T12:02:50.431869371Z	stdout	    release: �[32m'3.15.4'�[39m,
2022-05-25T12:02:50.431842521Z	stdout	    platform: �[32m'linux'�[39m,
2022-05-25T12:02:50.431813331Z	stdout	    kernel: �[32m'4.4.180+'�[39m,
2022-05-25T12:02:50.431781541Z	stdout	    distro: �[32m'Alpine Linux'�[39m,
2022-05-25T12:02:50.431749171Z	stdout	    arch: �[32m'x64'�[39m,
2022-05-25T12:02:50.431713621Z	stdout	  os: {
2022-05-25T12:02:50.431590920Z	stdout	Static Server Info: {
2022-05-25T12:02:50.383892266Z	stdout	]
2022-05-25T12:02:50.383863826Z	stdout	  { load: �[33m4.1644870393411555�[39m, temp: �[90mundefined�[39m, core: �[33m7�[39m }
2022-05-25T12:02:50.383830736Z	stdout	  { load: �[33m5.531535277596532�[39m, temp: �[90mundefined�[39m, core: �[33m6�[39m },
2022-05-25T12:02:50.383803516Z	stdout	  { load: �[33m3.705572128260539�[39m, temp: �[90mundefined�[39m, core: �[33m5�[39m },
2022-05-25T12:02:50.383774776Z	stdout	  { load: �[33m6.255146946660238�[39m, temp: �[90mundefined�[39m, core: �[33m4�[39m },
2022-05-25T12:02:50.383743636Z	stdout	  { load: �[33m3.7919664312926287�[39m, temp: �[90mundefined�[39m, core: �[33m3�[39m },
2022-05-25T12:02:50.383712626Z	stdout	  { load: �[33m5.312969889682065�[39m, temp: �[90mundefined�[39m, core: �[33m2�[39m },
2022-05-25T12:02:50.383678026Z	stdout	  { load: �[33m3.7470099824611816�[39m, temp: �[90mundefined�[39m, core: �[33m1�[39m },
2022-05-25T12:02:50.383630505Z	stdout	  { load: �[33m5.391728692593115�[39m, temp: �[90mundefined�[39m, core: �[33m0�[39m },
2022-05-25T12:02:50.383512715Z	stdout	First measurement [CPU]: [
2022-05-25T12:02:50.009278329Z	stdout	hostname: mauricenino-dashdot: Host not found
2022-05-25T12:02:49.910951460Z	stdout	hostname: mauricenino-dashdot: Host not found
2022-05-25T12:02:48.005273769Z	stdout	hostname: mauricenino-dashdot: Host not found
2022-05-25T12:02:47.005122760Z	stdout	hostname: mauricenino-dashdot: Host not found
2022-05-25T12:02:46.006257316Z	stdout	hostname: mauricenino-dashdot: Host not found
2022-05-25T12:02:45.297095868Z	stdout	First measurement [RAM]: �[33m1814695936�[39m
2022-05-25T12:02:45.276565518Z	stdout	First measurement [Storage]: �[33m34271720112128�[39m
2022-05-25T12:02:45.206320606Z	stdout	hostname: mauricenino-dashdot: Host not found
2022-05-25T12:02:45.198908671Z	stdout	listening on *:3001
2022-05-25T12:02:45.176273443Z	stdout	hostname: mauricenino-dashdot: Host not found

What browsers are you seeing the problem on?

Firefox

Where is your instance running?

Other (Please specify below)

Additional context

Synology docker.

[Bug] Network Interface Speed not reported correctly on Raspberry Pi 4

Description of the bug

Speed UP/Down and Interface isn't reported correctly, probably due to reported docker network

image

How to reproduce

No response

Relevant log output

none

What browsers are you seeing the problem on?

Safari

Where is your instance running?

Raspberry Pi

Additional context

No response

[Bug] Drive Space issue

Description of the bug

It picks up on all of my drives and the total space of all of them but shows that the space is completely free with nothing being used on the graph.

How to reproduce

-Fresh install on unraid (6.10.1) from the apps tab

Relevant log output

override: {
      os: undefined,
      arch: undefined,
      cpu_brand: undefined,
      cpu_model: undefined,
      cpu_cores: undefined,
      cpu_threads: undefined,
      cpu_frequency: undefined,
      ram_brand: undefined,
      ram_size: undefined,
      ram_type: undefined,
      ram_frequency: undefined,
      storage_brand_1: undefined,
      storage_size_1: undefined,
      storage_type_1: undefined,
      storage_brand_2: undefined,
      storage_size_2: undefined,
      storage_type_2: undefined,
      storage_brand_3: undefined,
      storage_size_3: undefined,
      storage_type_3: undefined,
      storage_brand_4: undefined,
      storage_size_4: undefined,
      storage_type_4: undefined,
      storage_brand_5: undefined,
      storage_size_5: undefined,
      storage_type_5: undefined
    }
  }
}

What browsers are you seeing the problem on?

Chrome

Additional context

No response

[Bug] Incorrect storage usage

Description of the bug

dash. is showing the wrong used storage in the dashboard.
image

df output shows the right used storage
image

it should be more like this, so a lot more than 2.5tb...
image

my docker compose volumes:

  volumes:
    - /etc/os-release:/etc/os-release:ro
    - /proc/1/ns/net:/mnt/host_ns_net:ro
    - /media:/mnt/host_media:ro
    - /storage:/mnt/host_storage
    - /storage/torrents:/mnt/host_torrents
    - /mnt:/mnt/host_mnt:ro
    - 

How to reproduce

No response

Relevant log output

No response

What browsers are you seeing the problem on?

No response

Where is your instance running?

Linux Server

Additional context

No response

[Bug] Current measurements are missing since 3.9.x

Description of the bug

Since the release of 3.9.x, the current measurements (networks speed, CPU/RAM/Storage percent) are hidden.
Reverting to 3.8.2 bring them back
firefox_W9c2ZcTUiW

How to reproduce

  1. Update to 3.9.0 or 3.9.1
  2. Open the dashboard
  3. Downgrade to 3.8.2
  4. Open the dashboard

Relevant log output

No response

Info output of dashdot cli

No response

What browsers are you seeing the problem on?

Firefox, Chrome, Microsoft Edge

Where is your instance running?

Linux Server

Additional context

No response

[Bug] Storage isnt reported correctly on RPi4

Description of the bug

Just pulled the latest image with the Eula change on speedest and noticed that the Storage Part is not showing correctly now
Bildschirmfoto 2022-06-13 um 13 45 30

How to reproduce

No response

Relevant log output

No response

Info output of dashdot cli

No response

What browsers are you seeing the problem on?

Safari

Where is your instance running?

Raspberry Pi

Additional context

No response

[Feature] Replace nivo charts with rechart charts

Description of the feature

Nivo should be completely removed from the project, due to the following issues:

  • Performance is pretty bad in SVG mode
  • Animations for pie-chart and gradient for line-chart don't work in Canvas mode
  • Dependencies are not correctly setup (not forwarding peer dependencies, out-of date react version), therefore yarn pnp mode is not working
  • Theme options are limited (e.g. Hover slices are always the same color, which doesn't look good in dark-mode)
  • Hover slices on line-charts are not updating when cursor is not moving

Tasks

  • Upgrade line-charts
  • Upgrade pie-charts

[Bug] UI not alligned correctly

Description of the bug

Something fishy is happening with the UI.
Screenshot 2022-06-02 201052

The button/switch to show all cores and the button/switch for dark mode is overlapping and not in the correct spot.

How to reproduce

No response

Relevant log output

No response

What browsers are you seeing the problem on?

Firefox

Where is your instance running?

Other (Please specify below)

Additional context

UnRaid Sever

CPU Temperature monitoring

Describe the solution you'd like
Temperature showing up as a field in the CPU card, or in the graph on hover

Additional context
Original:

after getting dashdot with the newest image to work, I've noticed that CPU temperature isn't monitored, would be quite cool to see this feature in the future.

[Bug] The command with DEFAULT_INTERFACE_PATH does produce an error.

Description of the bug

After setting up your docker-compose.yml file, you have to run the following command to start the dashboard:

DEFAULT_INTERFACE_PATH=$(readlink -f /sys/class/net/$(ip addr show | awk '/inet.*brd/{print $NF; exit}')) docker-compose up

This command is producing this error:

**ERROR**: Volume /sys/devices/pci0000:00/0000:00:03.0/virtio0/net/eth0:/mnt/eth0 has incorrect format, should be external:internal[:mode]

How to reproduce

Set up the docker-compose file and run the given command.

Relevant log output

`ERROR: Volume /sys/devices/pci0000:00/0000:00:03.0/virtio0/net/eth0:/mnt/eth0 has incorrect format, should be external:internal[:mode]`

What browsers are you seeing the problem on?

No response

Where is your instance running?

Linux Server

Additional context

It's running on a root server

[Bug] error Command failed with signal "SIGINT".

Description of the bug

I get this error on a Raspberry Pi 4 with Ubuntu server 64bit. It comes after the speed test. It does not happen when building from source, only docker/docker-compose.

How to reproduce

I just ran the docker command on the main GitHub page, as is.

[Bug] df does not return all drives inside the container

Description of the bug

Drive information is gathered using df, which returns only the root drive / inside the docker container, while it returns all drives on the host.

This should not be the case, because with --privileged, all devices should be available inside the container.

BUT - the device is actually mounted, which can be seen when using ls -la /dev

How to reproduce

Connect to the docker container and run df:

docker container exec -it CONTAINER_NAME /bin/sh -c "df"

And check that it is mounted with:

docker container exec -it CONTAINER_NAME /bin/sh -c "ls -la /dev/DRIVE_NAME"

Additional Context

I have opened a StackOverflow question with a bounty: https://stackoverflow.com/q/72517164/9150652

Dependency Dashboard

This issue provides visibility into Renovate updates and their statuses. Learn more

This repository currently has no open or pending branches.

Detected dependencies

docker-compose
docker-compose.yml
  • node 18-alpine
  • node 18-alpine
dockerfile
Dockerfile
  • node 18-alpine
backend/Dockerfile.dev
  • node 18-alpine
droneci
.drone.yml
  • node lts-alpine
  • node lts-alpine
  • crazymax/docker latest
  • docker/compose undefined
  • crazymax/docker latest
  • docker/compose undefined
npm
backend/package.json
  • cors 2.8.5
  • dashdot-shared 1.0.0
  • express 4.18.1
  • rxjs 7.5.5
  • socket.io 4.5.1
  • systeminformation 5.11.15
  • universal-speedtest 2.0.5
  • @types/cors 2.8.12
  • @types/express 4.17.13
  • @types/node 17.0.35
  • nodemon 2.0.16
  • ts-node 10.8.0
  • typescript 4.7.2
frontend/package.json
  • @fortawesome/fontawesome-svg-core 6.1.1
  • @fortawesome/free-brands-svg-icons 6.1.1
  • @fortawesome/free-solid-svg-icons 6.1.1
  • @fortawesome/react-fontawesome 0.1.18
  • @nivo/core 0.79.0
  • @nivo/line 0.79.1
  • @nivo/pie 0.79.1
  • @testing-library/jest-dom 5.16.4
  • @testing-library/react 13.2.0
  • @testing-library/user-event 14.2.0
  • antd 4.20.6
  • axios 0.27.2
  • dashdot-shared 1.0.0
  • react 18.1.0
  • react-content-loader 6.2.0
  • react-dom 18.1.0
  • react-parallax-tilt 1.7.36
  • react-scripts 5.0.1
  • react-spinners-kit 1.9.1
  • sass 1.52.1
  • socket.io-client 4.5.1
  • store 2.0.12
  • styled-components 5.3.5
  • typescript 4.7.2
  • use-color-scheme 1.1.3
  • web-vitals 2.1.4
  • @types/jest 27.5.1
  • @types/node 17.0.35
  • @types/react 18.0.9
  • @types/react-dom 18.0.5
  • @types/store 2.0.2
  • @types/styled-components 5.1.25
package.json
  • @types/node 17.0.35
  • prettier 2.6.2
  • typescript 4.7.2
  • yarn 3.2.1
shared/package.json
  • typescript 4.7.2

  • Check this box to trigger a request for Renovate to run again on this repository

Storage info incorrect

Running this on Pi4
Built an image for arm64

docker build -t justsky/dashdot .
https://hub.docker.com/r/justsky/dashdot

Compose

version: "3"
services:
  dashdot:
    container_name: dashdot
    image: justsky/dashdot
    ports:
      - 4002:3001

Log

    today at 3:21:49 PMyarn run v1.22.17
    today at 3:21:49 PM$ (cd ./backend && yarn start)
    today at 3:21:51 PM$ node .
    today at 3:21:52 PMlistening on *:3001
    today at 3:22:01 PMStatic Server Info Gathered:  {
    today at 3:22:01 PM  os: {
    today at 3:22:01 PM    arch: 'arm64',
    today at 3:22:01 PM    distro: 'Alpine Linux',
    today at 3:22:01 PM    kernel: '5.10.92-v8+',
    today at 3:22:01 PM    platform: 'linux',
    today at 3:22:01 PM    release: '3.15.0'
    today at 3:22:01 PM  },
    today at 3:22:01 PM  cpu: {
    today at 3:22:01 PM    manufacturer: 'Cortex-A72',
    today at 3:22:01 PM    brand: '',
    today at 3:22:01 PM    speed: 1.6,
    today at 3:22:01 PM    cores: 4,
    today at 3:22:01 PM    threads: 4
    today at 3:22:01 PM  },
    today at 3:22:01 PM  ram: { total: 8004149248, layout: [ [Object] ] },
    today at 3:22:01 PM  storage: { layout: [] }
    today at 3:22:01 PM}

I have 240GB ssd and 1TB hard disk, its not displaying storage info correctly

image

[Bug] Weird interface name causes crash

Description of the bug

Hey,

I'm trying to set up dashdot using Docker Compose on my server.
For some reason, dashdot looks for a network interface named enp0s31f6\nwlan0 with a line break that shouldn't be there and crashes after it attempts to retrieve information about it from the system.

How to reproduce

  1. Set up a new docker stack using this Docker compose config:
version: '3.5'
services:
  dash:
    image: mauricenino/dashdot:latest
    restart: unless-stopped
    privileged: true
    ports:
      - '3001:3001'
    volumes:
      - /etc/os-release:/etc/os-release:ro
      - /proc/1/ns/net:/mnt/host_ns_net:ro
      - /export:/mnt/host_media:ro
      - /mnt:/mnt/host_mnt:ro
    environment:
      DASHDOT_ENABLE_CPU_TEMPS: "true"
  1. Attempt to launch it

Relevant log output

listening on *:3001
Using network interface "enp0s31f6
wlan0"
node:internal/errors:845
  const err = new Error(message);
              ^

Error: Command failed: cat /internal_mnt/host_sys/class/net/enp0s31f6
wlan0/speed
cat: read error: Is a directory
/bin/sh: wlan0/speed: not found

    at ChildProcess.exithandler (node:child_process:387:12)
    at ChildProcess.emit (node:events:527:28)
    at maybeClose (node:internal/child_process:1090:16)
    at Socket.<anonymous> (node:internal/child_process:449:11)
    at Socket.emit (node:events:527:28)
    at Pipe.<anonymous> (node:net:740:14) {
�
  code: 127,
  killed: false,
  signal: null,
  cmd: 'cat /internal_mnt/host_sys/class/net/enp0s31f6\nwlan0/speed',
  stdout: '',
  stderr: 'cat: read error: Is a directory\n/bin/sh: wlan0/speed: not found\n'
}

Node.js v18.3.0
error Command failed with exit code 1.
info Visit https://yarnpkg.com/en/docs/cli/run for documentation about this command.
yarn run v1.22.19
$ node .
(node:28) [DEP0005] DeprecationWarning: Buffer() is deprecated due to security and usability issues. Please use the Buffer.alloc(), Buffer.allocUnsafe(), or Buffer.from() methods instead.
(Use `node --trace-deprecation ...` to show where the warning was created)

Info output of dashdot cli

yarn run v1.22.19
$ node dist/apps/cli/main.js info
INFO
=========
Yarn: 1.22.19
Node: v18.3.0
Dash: 3.3.3

Cwd: /app
Hash: fe040a86f58934194d1f33793fb14b84896ff737
In Docker: true
In Podman: false
Done in 0.41s.

What browsers are you seeing the problem on?

Chrome

Where is your instance running?

Linux Server

Additional context

Here's the output of ifconfig as it probably is relevant (unrelated virtual network devices omitted):

enp0s31f6: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.178.74  netmask 255.255.255.0  broadcast 192.168.178.255
        inet6 fe80::66a5:b53d:d810:f60  prefixlen 64  scopeid 0x20<link>
        ether 00:01:2e:81:dc:45  txqueuelen 1000  (Ethernet)
        RX packets 473465317  bytes 676790155893 (630.3 GiB)
        RX errors 0  dropped 434284  overruns 0  frame 0
        TX packets 128253829  bytes 55531476452 (51.7 GiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
        device interrupt 16  memory 0xdc300000-dc320000  

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 8241329  bytes 13071192069 (12.1 GiB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 8241329  bytes 13071192069 (12.1 GiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.178.81  netmask 255.255.255.0  broadcast 192.168.178.255
        inet6 fe80::24b2:bd0a:6d8c:f8  prefixlen 64  scopeid 0x20<link>
        ether 44:03:2c:93:29:57  txqueuelen 1000  (Ethernet)
        RX packets 897139  bytes 115915057 (110.5 MiB)
        RX errors 0  dropped 432383  overruns 0  frame 0
        TX packets 26550  bytes 3420898 (3.2 MiB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

[Feature] Pass default network into container without doing manual work

Description of the feature

Right now, to make the network stats to work, you have to do one of the following:

  1. Bind the container to the host network (--network host), which has some negative effects and makes it harder to manage
  2. Manually find the default interface and bind the statistics data from the host to a predefined path in the container (this is the recommended approach, as stated in the README, right now)

Both of them are not optimal, so I would really like a way to do it, that is officially supported by docker and does not result in basic networking stopping to work.

Additional context

StackOverflow has not helped so far, but here is a post in case you want to give it a bounty or something: https://stackoverflow.com/q/72380594/9150652

[Feature] Raid Support

Description of the feature

Related to #40 which is now closed but still affecting me.

I'm in a similar boat, two RAID 1 drive sets reporting as 4 drives. RAID 1 mirrors each drive so the total storage capacity would be halved.

chrome_e4rB6qKWP9

I think from a UX perspective you could end up with something nice like

RAID Set 1 - Samsung SSD, Samsung SSD (953.9 GB)
RAID Set 2 - Samsung NVMe, Samsung NVMe (953.9 GB)

Happy to help debug/test some stuff to get a good implementation if you are up for it.

Additional context

No response

[Bug] Storage not reported correctly with attached HW Raid Controller on Raspberry Pi 4

Description of the bug

Raspberry Pi4 with attached Samsung 512GB SSD and a HW RAID (4x8TB) not showing used space

Bildschirmfoto 2022-06-08 um 21 52 41

Another Pi4 with the same Samsung 512GB SSD shows valid data

Bildschirmfoto 2022-06-08 um 21 53 08

How to reproduce

No response

Relevant log output

No response

What browsers are you seeing the problem on?

Safari

Where is your instance running?

Raspberry Pi

Additional context

No response

[Feature] Show multiple network interfaces

Description of the feature

As far as I can tell, it only shows 1 interface currently.

I'd like to view more or at least an option to select which one to show.

As for now it defaults to my 10G NIC which is internal link with another server.

Additional context

No response

[Feature] RAID Support

Is your feature request related to a problem? Please describe.
The reported disk usage is simply a sum of all disks on the system, not real storage.

Describe the solution you'd like
Storage should monitor a configurable list of volumes, not just block devices.

Additional context
For example, I have a test server that has two 240 GB SSDs and two 480GB HDDs. Dashdot reports this as 1.4TB of storage with some tiny sliver as "used." However, those two HDDs and one of the SSDs are in a ZFS pool together. So the actual state of storage on the server is one 240GB volume with 5% used and one 480GB volume with 33% used.

root@test:~# lsblk
NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 465.8G  0 disk 
├─sda1   8:1    0 465.8G  0 part 
└─sda9   8:9    0     8M  0 part 
sdb      8:16   0 238.5G  0 disk 
└─sdb1   8:17   0 238.5G  0 part /
sdc      8:32   0 238.5G  0 disk 
├─sdc1   8:33   0 238.5G  0 part 
└─sdc9   8:41   0     8M  0 part 
sdd      8:48   0 465.8G  0 disk 
├─sdd1   8:49   0 465.8G  0 part 
└─sdd9   8:57   0     8M  0 part 

root@test:~# df -h /
Filesystem      Size  Used Avail Use% Mounted on
/dev/sdb1       234G  9.7G  213G   5% /

root@test:~# zpool status
  pool: tank
 state: ONLINE
  scan: scrub repaired 0B in 00:42:24 with 0 errors on Sun May  8 01:06:25 2022
config:

        NAME                                              STATE     READ WRITE CKSUM
        tank                                              ONLINE       0     0     0
          mirror-0                                        ONLINE       0     0     0
            ata-WDC_WD5002ABYS-02B1B0_WD-WCASYA237797     ONLINE       0     0     0
            ata-WDC_WD5003ABYX-01WERA2_WD-WMAYP6798572    ONLINE       0     0     0
        cache
          ata-Samsung_SSD_840_PRO_Series_S12RNEACC87965T  ONLINE       0     0     0

errors: No known data errors

root@test:~# zpool list
NAME   SIZE  ALLOC   FREE  CKPOINT  EXPANDSZ   FRAG    CAP  DEDUP    HEALTH  ALTROOT
tank   464G   156G   308G        -         -    17%    33%  1.00x    ONLINE  -

[Feature] FR - IP address

Description of the feature

If possible, could dash. show the IP of the device (WAN and or LAN) under the new NETWORKING section?

Additional context

No response

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.