Auteur Topic: Temperatuur uitlezen in PHP of HTML  (gelezen 10789 keer)

Offline josvanruitenbeek

  • Bedankjes
  • -Gegeven: 5
  • -Ontvangen: 6
  • Berichten: 70
    • http://www.weerhongarije.nl
Temperatuur uitlezen in PHP of HTML
« Gepost op: 08 maart 2012, 13:15:49 »
Weet iemand hoe ik de temperatuur van de interne harde schijf van DS kan uitlezen om deze weer te geven in een PHP of HTML pagina?
Er zijn slechts 10 soorten mensen: zij die binair begrijpen en zij die dat niet doen.
www.hazajon.eu

Offline Sm0ke0ut

  • Bedankjes
  • -Gegeven: 2
  • -Ontvangen: 3
  • Berichten: 14
Re: Temperatuur uitlezen in PHP of HTML
« Reactie #1 Gepost op: 26 maart 2012, 14:54:18 »
In principe niet. Hiervoor dien je een command uit te voeren vanuit de shell, wat bij Synology standaard niet mogelijk is.

De command voor het opvragen van de temperaturen in shell is als volgt:
/usr/syno/bin/smartctl -d sat -T permissive -l scttempsts /dev/sda

Je kan proberen om de PHP functies voor het uitvoeren van commands aan te zetten of wellicht de makkelijkere manier, een cronjob instellen die eens in de zoveel tijd een bestandje weg schrijft met daarin de informatie. :)
Synology DS2411+ | 6x WD30EZRX, 2x WD20EARX, 2x WD10EARX | DSM 4.0-2198

Offline wopper

  • MVP
  • *
  • Bedankjes
  • -Gegeven: 5
  • -Ontvangen: 52
  • Berichten: 424
    • http://www.robdehoog.nl
Re: Temperatuur uitlezen in PHP of HTML
« Reactie #2 Gepost op: 26 maart 2012, 18:28:34 »
Allicht kan je een deel gebruiken van mijn cacti how to

http://www.robdehoog.nl/technology/cact ... sks-cacti/
  • Mijn Synology: 916+

Offline josvanruitenbeek

  • Bedankjes
  • -Gegeven: 5
  • -Ontvangen: 6
  • Berichten: 70
    • http://www.weerhongarije.nl
Re: Temperatuur uitlezen in PHP of HTML
« Reactie #3 Gepost op: 27 maart 2012, 09:03:34 »
Dank voor de tips!
Deze cronjobs kan ik ook gebruiken voor een andere vraag van mij: http://www.synology-forum.nl/viewtopic.php?f=30&t=8737.

Ik ga er komende week mee aan het stoeien, kom ik er niet uit dan meld ik me weer.
Er zijn slechts 10 soorten mensen: zij die binair begrijpen en zij die dat niet doen.
www.hazajon.eu

Offline josvanruitenbeek

  • Bedankjes
  • -Gegeven: 5
  • -Ontvangen: 6
  • Berichten: 70
    • http://www.weerhongarije.nl
Re: Temperatuur uitlezen in PHP of HTML
« Reactie #4 Gepost op: 27 maart 2012, 21:10:09 »
Met dank aan het Cronjob script van Wizjos kan ik nu heel eenvoudig cronjobs maken. Alleen weet ik nu niet hoe ik de commandoregel van Sm0ke0ut:
Citaat
/usr/syno/bin/smartctl -d sat -T permissive -l scttempsts /dev/sda

kan gebruiken om de opgehaalde informatie in een XML(?) bestand kan laten plaatsen.
Kan dat met een enkele commandoregel in de cronjob of moet de cronjob een hiertoe aangemaakt script aanroepen? Hier is mijn lunix kennis veeeeel te beperkt voor. Als jullie me nog een eindje op weg kunnen helpen zou ik dat geweldig vinden.

Update:
Ik heb het uitgevogeld en voor elkaar gekregen......!
Resultaat: http://www.hazajon.eu/weer/index.php
Er zijn slechts 10 soorten mensen: zij die binair begrijpen en zij die dat niet doen.
www.hazajon.eu

Offline Plerry

  • MVP
  • *
  • Bedankjes
  • -Gegeven: 17
  • -Ontvangen: 290
  • Berichten: 1.507
  • Tom Poes, verzin een list ...
Re: Temperatuur uitlezen in PHP of HTML
« Reactie #5 Gepost op: 28 maart 2012, 08:55:54 »
Citaat van: "josvanruitenbeek"
...Ik heb het uitgevogeld en voor elkaar gekregen......!
Resultaat: http://www.hazajon.eu/weer/index.php
Het klopt toch nog niet helemaal, gezien de melding:
Citaat
Warning: include(servertemp.php): failed to open stream: No such file or directory in /volume1/web/hazajon/weer/index.php on line 35 Warning: include(): Failed opening 'servertemp.php' for inclusion (include_path='.:/usr/syno/php/lib/php') in /volume1/web/hazajon/weer/index.php on line 35
Plerry
There are only 10 kinds of people: ... those who understand binary, and those who don't.

Offline josvanruitenbeek

  • Bedankjes
  • -Gegeven: 5
  • -Ontvangen: 6
  • Berichten: 70
    • http://www.weerhongarije.nl
Re: Temperatuur uitlezen in PHP of HTML
« Reactie #6 Gepost op: 28 maart 2012, 09:07:17 »
Citaat
Het klopt toch nog niet helemaal, gezien de melding:
Warning: include(servertemp.php): failed to open stream: No such file or directory in /volume1/web/hazajon/weer/index.php on line 35 Warning: include(): Failed opening 'servertemp.php' for inclusion (include_path='.:/usr/syno/php/lib/php') in /volume1/web/hazajon/weer/index.php on line 35

Ik zie het zojuist ook. Gisteravond werkte het perfect, straks na mijn andere bezigheden even controleren.

Update: Ik kon het niet laten, was klein foutje, weer opgelost. http://www.hazajon.eu/weer/index.php
Er zijn slechts 10 soorten mensen: zij die binair begrijpen en zij die dat niet doen.
www.hazajon.eu

Offline josvanruitenbeek

  • Bedankjes
  • -Gegeven: 5
  • -Ontvangen: 6
  • Berichten: 70
    • http://www.weerhongarije.nl
Re: Temperatuur uitlezen in PHP of HTML
« Reactie #7 Gepost op: 29 maart 2012, 14:09:46 »
Voor hen die er gebruik van willen maken mijn werkwijze:

Ten eerste moeten we de temperatuur informatie uit de NAS halen. In een telnet sessie geef je hiervoor het volgende commando (met dank aan Sm0ke0ut):
Citaat
/usr/syno/bin/smartctl -d sat -T permissive -l scttempsts /dev/sda

Dit geeft ons de volgende informatie:
Citaat
smartctl 5.42 2011-10-20 r3458 [armv5tel-linux-2.6.32.12] (local build) Copyright (C) 2002-11 by Bruce Allen, http://smartmontools.sourceforge.net

Unable to get testing progress of /dev/sda
=== START OF READ SMART DATA SECTION ===
SCT Status Version: 3
SCT Version (vendor specific): 522 (0x020a)
SCT Support Level: 1
Device State: Active (0)
Current Temperature: 34 Celsius
Power Cycle Min/Max Temperature: 14/41 Celsius
Lifetime Min/Max Temperature: 14/41 Celsius

Met een cronjob kunnen we dit automatiseren en de gegevens opslaan in een bestand. Om cronjobs te maken en te beheren heeft WizJos een perfect script geschreven.
Download, installeer en voer eerst uit: init_3rd_party. Dit vind je op de site van WizJos:
http://wizjos.endofinternet.net/synology/index.php/algemeen/3rd-party-apps/init3rdparty
Vervolgens download en installeer je het cronjobs script:
http://wizjos.endofinternet.net/synology/index.php/scripts/cronjobs
Vreemd genoeg werkt dit script sinds DSM 4.0 (bij mij althans) alleen correct als je op DSM inlogt via je extern IPadres. Dus even 'buitenom gaan'.

Maak in een nieuwe cronjob aan met het volgende commando:
Citaat
/usr/syno/bin/smartctl -d sat -T permissive -l scttempsts /dev/sda> /volume1/....../servertemp.txt
Maak de bestemmingsdirectory compleet met het pad van je keuze. Kies een gebruiker, geef de job een beschrijving (altijd handig om later terug te kunnen zien waar je die job ook al weer voor gemaakt had) en kies een interval voor de job.

Nu willen we de temperatuur weergeven op een webpagina. Hiervoor gebruik ik dit simpele script:

Citaat
<?php>
//Open het bestand op de lokatie waar de cronjob het heeft neergezet
$a = fopen("/...../servertemp.txt","r");
$b = file("/...../servertemp.txt");
$numbers = count($b);
//lees de regels van het bestand

for ($i=0;$i<10;$i++)
{
//print("$b[$i]<br>");
//verwijder bovenstaande slashes om alle regels weer te geven.
}
//lees de temperatuur op regel 9, 11 positie van rechts, twee posities
$temp = substr($b[9], -11, 2);
//toon temperatuur op scherm
echo "Temperatuur van MijnSynology NAS: $temp&#176 C.";
//sluit bestand
fclose($a);

?>

Plezier en succes er mee!
Er zijn slechts 10 soorten mensen: zij die binair begrijpen en zij die dat niet doen.
www.hazajon.eu

Offline zandhaas

  • MVP
  • *
  • Bedankjes
  • -Gegeven: 24
  • -Ontvangen: 206
  • Berichten: 804
Re: Temperatuur uitlezen in PHP of HTML
« Reactie #8 Gepost op: 29 maart 2012, 15:31:43 »
Mooie site!!

Maar als extra zou ik ook de temperatuur van de CPU van de synology bij zetten.
Laatst was die van mij 84 graden celcius. Bleek dat een een laag stof voor de ventilator ingang zat :oops:

Helaas weet ik niet hoe je deze temperatuur op kunt vragen.
  • Mijn Synology: DS918+
  • Extra's: 16GB RAM
DS213+  DSM 6.2  512MB
DS918+  DSM 7.2  16GB + 2*1TB NVME  Cache
VDSM      DSM 7.2
MR2200ac

Offline Nelesss

  • MVP
  • *
  • Bedankjes
  • -Gegeven: 70
  • -Ontvangen: 204
  • Berichten: 1.275
Re: Temperatuur uitlezen in PHP of HTML
« Reactie #9 Gepost op: 29 maart 2012, 15:50:19 »
Citaat van: "zandhaas"
Mooie site!!

Maar als extra zou ik ook de temperatuur van de CPU van de synology bij zetten.
Laatst was die van mij 84 graden celcius. Bleek dat een een laag stof voor de ventilator ingang zat :oops:

Helaas weet ik niet hoe je deze temperatuur op kunt vragen.

Ik zou is kijken bij Systeeminformatie en dan het groene of rode bolletje! Hou de muis daarop en er komt een temperatuur bij.
Synology's:
DS-1513+ (4GB Ram)
DS-114
DS-112J

Offline zandhaas

  • MVP
  • *
  • Bedankjes
  • -Gegeven: 24
  • -Ontvangen: 206
  • Berichten: 804
Re: Temperatuur uitlezen in PHP of HTML
« Reactie #10 Gepost op: 29 maart 2012, 16:34:54 »
Citaat van: "Nelesss"
Ik zou is kijken bij Systeeminformatie en dan het groene of rode bolletje! Hou de muis daarop en er komt een temperatuur bij.

Die ken ik.
Maar niet hoe je die via de command line op kunt vragen om de waarde in bijvoorbeeld een web pagina op te nemen.
  • Mijn Synology: DS918+
  • Extra's: 16GB RAM
DS213+  DSM 6.2  512MB
DS918+  DSM 7.2  16GB + 2*1TB NVME  Cache
VDSM      DSM 7.2
MR2200ac

Offline josvanruitenbeek

  • Bedankjes
  • -Gegeven: 5
  • -Ontvangen: 6
  • Berichten: 70
    • http://www.weerhongarije.nl
Re: Temperatuur uitlezen in PHP of HTML
« Reactie #11 Gepost op: 29 maart 2012, 17:18:07 »
Citaat
Nelesss schreef:
Ik zou is kijken bij Systeeminformatie en dan het groene of rode bolletje! Hou de muis daarop en er komt een temperatuur bij.

IK krijg deze 'ledjes' (groene of rode bolletje) niet eens te zien. Is dat een beperking van mijn instapmodelletje, de DS110J?

Ben ook al op verschillende forums aan het zoeken geweest voor een Lunixcommando om CPU temperatuur uit te lezen. Tot op heden zonder resultaat.
Er zijn slechts 10 soorten mensen: zij die binair begrijpen en zij die dat niet doen.
www.hazajon.eu

Offline Sm0ke0ut

  • Bedankjes
  • -Gegeven: 2
  • -Ontvangen: 3
  • Berichten: 14
Re: Temperatuur uitlezen in PHP of HTML
« Reactie #12 Gepost op: 01 april 2012, 16:55:38 »
Ik heb zojuist uitgevonden hoe je de CPU temperatuur kunt uitlezen. Ik heb er tevens maar gelijk een klein shell scriptje voor gemaakt, zodat je ook automatisch het gemiddelde hebt.

#!/bin/sh

cores=`cat /proc/cpuinfo | grep -i processor | wc -l`
counter=0

while [ "$counter" -lt "$cores" ]
do
        temperature=$((`cat /sys/class/hwmon/hwmon$counter/device/temp1_input` / 1000))
        total=$(( $total + $temperature ))
        echo `cat /sys/class/hwmon/hwmon$counter/device/temp1_label`: $temperature
        counter=$(( $counter + 1 ))
done
echo Average: $(( $total / $cores ))

Ik hoop dat je er iets mee kan.

Zet de code bijvoorbeeld in het bestand CPUTemp.sh

$ chmod +x CPUTemp.sh
$ ./CPUTemp.sh
Core 0: 54
Core 1: 54
Core 2: 54
Core 3: 54
Average: 54
Synology DS2411+ | 6x WD30EZRX, 2x WD20EARX, 2x WD10EARX | DSM 4.0-2198

Offline josvanruitenbeek

  • Bedankjes
  • -Gegeven: 5
  • -Ontvangen: 6
  • Berichten: 70
    • http://www.weerhongarije.nl
Re: Temperatuur uitlezen in PHP of HTML
« Reactie #13 Gepost op: 02 april 2012, 00:54:19 »
Geweldig! Dank je Sm0ke0ut!

Maar wellicht kun je me nog iets verder helpen, zodat ik ook weer wat bijleer. Tot nu toe ben ik via telnet wel wat aan het verkennen geweest in mijn NAS, maar tot wijzigingen of aanvullingen ben ik nog niet gekomen. Concreet is mijn vraag aan je: waar in mijn NAS moet ik jouw script plaatsen en hoe doe ik dat? Ik ben al wel wat aan het lezen geweest links en rechts maar helemaal duidelijk is het me nog niet.

Ik hoor het graag.
Er zijn slechts 10 soorten mensen: zij die binair begrijpen en zij die dat niet doen.
www.hazajon.eu

Offline Sm0ke0ut

  • Bedankjes
  • -Gegeven: 2
  • -Ontvangen: 3
  • Berichten: 14
Re: Temperatuur uitlezen in PHP of HTML
« Reactie #14 Gepost op: 02 april 2012, 10:50:07 »
Login via telnet/ssh

$ wget http://media.fayntic.com/synology/CPUTemp.sh
$ chmod +x CPUTemp.sh
$ ./CPUTemp.sh
Core 0: 54
Core 1: 54
Core 2: 54
Core 3: 54
Average: 54
Synology DS2411+ | 6x WD30EZRX, 2x WD20EARX, 2x WD10EARX | DSM 4.0-2198


 

[MOD]Temperatuur grafiek

Gestart door Bld-Board Algemeen

Reacties: 17
Gelezen: 16044
Laatste bericht 02 juni 2007, 17:23:04
door CronoS
temperatuur harde schijven.

Gestart door pietjebelBoard NAS hardware vragen

Reacties: 1
Gelezen: 3191
Laatste bericht 30 september 2009, 10:48:17
door Björn
[BUG] Harddisk WD20EARS 60MVWBO temperatuur -1C/30F

Gestart door BobBoard NAS hardware vragen

Reacties: 3
Gelezen: 3519
Laatste bericht 27 januari 2012, 09:30:37
door spikehome
Wijzigen Aanmeldpagina klok & temperatuur?

Gestart door RudolphBoard Synology DSM 5.1 en eerder

Reacties: 23
Gelezen: 8141
Laatste bericht 01 februari 2014, 18:10:55
door Birdy
CPU Temperatuur (te hoog)??

Gestart door niekniek89Board NAS hardware vragen

Reacties: 12
Gelezen: 10885
Laatste bericht 16 april 2015, 20:34:49
door Birdy