Monitoring température CPU sur NAS Synology

Tags: #<Tag:0x00007fcb9d6c0a50>

Cela ne sera peut être pas nécessaire :
- un plugin arrive d’un autre auteur, que vous pouvez voir ici :

[Plugin Tiers] Monitoring server - Plugins - Communauté Jeedom

1 J'aime

Bonjour,

J’ai fait un PR sur le plugin pour la coloration des verts et rouges (car sinon, avec le thème light de Jeedom, ce n’est pas lisible).

En attendant qu’il soit accepté, vous pouvez toujours effectuer les modifications à la main.

1 J'aime

Bonjour,

Merci beaucoup pour le ‹ PR › sur les couleurs et l’info CPU des NAS : ça fonctionne avec la màj faite ce matin :slight_smile:

Thème ‹ alternatif › :
image
Thème ‹ principal › :
image

Pour la reprise par Jeedom du plugin : l’autre plugin mentionné est vraiment ultra complet, c’est un vrai tableau de bord.
Par contre, cet ancien plugin conserve tout son avantage sur un affichage du type « Design » pour contrôler d’un coup d’œil ce qui ne va pas. S’il pouvait être maintenu, ce serait parfait :wink:

L’auteur de l’autre plugin a prévu de faire un Widget minimaliste.

Pour le PR, du plugin Monitoring, l’un des 2 que j’ai proposé a été oublié, j’ai relancé l’auteur pour le 2nd (qui concerne l’affichage en vue mobile).

=> Au passage, c’est bien aussi une preuve que ce plugin est encore vivant.

Ma PR n’a pas été acceptée, par contre.

C’est (mais j’en sais rien) très certainement du au fait que c’est du spécifique. Moi, perso, le spécifique est une plait à gérer.

Actuellement par exemple, sur les Raspberry qui sont en 64 bits la température du remonte plus depuis la dernière mise à jour du Kernel (le fichier ////temp n’est plus accessible sur cet OS.
=> c’est certainement un truc qui va être corrigé sur les Pi (je le souhaites…) mais, je ne propose pas à l’auteur du plugin de faire cette modification, car c’est encore du spécifique.

Le plugin gère déjà du spécifique en cascade : Lis valeur dans XXX. Si valeur vide, alors lis dans YYY. Si valeur vide, alors lis dans ZZZ.
Un de plus ou de moins.

L’auteur du plugin Monitoring vient de procéder au comite du PR pour la partie mobile.
Donc les 2 PR sont ok.

Pour les autres PR, l’auteur manque de temps actuellement, donc je pense qu’il ne peut pas tester les autres fonctionnalité, il reste prudent sur leur ajout (ce plugin étant tellement populaire, qu’il serait dommage de le mettre en vrille pour un truc pas testé).
- C’est ce que j’en déduis.

=> Merci à lui (je le nomme pas, pour ne pas l’embêter).

1 J'aime

Merci à l’auteur alors :laughing:
Et merci @Fabrice pour avoir relancé le tout :wink:

Oui c’est vrai que ce plugin est populaire, normal car on a une supervision plutôt avancée dans un tout petit espace. C’est drôlement pratique.

1 J'aime

Bonjour à tous,

Je suis perdu là :cry:
Je ne m’étais pas rendu compte que la version du Syno ne s’affichait plus avec ma modif pour lire la température CPU (comme quoi, la version ne me sert pas beaucoup ici, mais bon, j’aime pas faire des trucs pas propres).

En fait, suivant l’endroit où je positionne mon petit bloc de lecture de température, soit j’ai la temp et plus la version, soit j’ai la version mais plus la temp.
Je pige pas trop ce qui se passe ???

Voici le code correspondant (aux environs de la ligne 616 du fichier « Monitoring.class.php ») :

if($this->getConfiguration('synology') == '1'){
	// LECTURE CPU TEMP : DEBUT (POSITION  1 : LECTURE VERSION SYNO HS, CPU TEMP OK)
	$cputemp0Synocmd = "cat /sys/devices/platform/coretemp.0/temp2_input";
	$cputemp0output = ssh2_exec($connection, $cputemp0Synocmd);
	stream_set_blocking($cputemp0output, true);
	$cputemp0 = stream_get_contents($cputemp0output);
	// LECTURE CPU TEMP : FIN (POSITION 1)

	$platformcmd = "get_key_value /etc/synoinfo.conf unique | cut -d'_' -f2";
	$platformoutput = ssh2_exec($connection, $platformcmd);
	stream_set_blocking($platformoutput, true);
	$synoplatorm = stream_get_contents($platformoutput);

	$nbcpuARMcmd = "cat /proc/sys/kernel/syno_CPU_info_core";
	$nbcpuoutput = ssh2_exec($connection, $nbcpuARMcmd);
	stream_set_blocking($nbcpuoutput, true);
	$nbcpu = stream_get_contents($nbcpuoutput);
	$nbcpu = trim($nbcpu);

	$cpufreq0ARMcmd = "cat /proc/sys/kernel/syno_CPU_info_clock";
	$cpufreq0output = ssh2_exec($connection, $cpufreq0ARMcmd);
	stream_set_blocking($cpufreq0output, true);
	$cpufreq0 = stream_get_contents($cpufreq0output);
	$cpufreq0 = trim($cpufreq0);

	$hddcmd = "df -h | grep 'vg1000\|volume1' | head -1 | awk '{ print $2,$3,$5 }' | cut -d '%' -f1";
	$hdddata = str_replace(array("K ","M ","G "),array("Ko ","Mo ","Go "), $hdddata);
	$hdddata = ssh2_exec($connection, $hddcmd);
	stream_set_blocking($hdddata, true);
	$hdd = stream_get_contents($hdddata);

	$versionsynocmd = "cat /etc.defaults/VERSION | cut -d'=' -f2 | cut -d'=' -f2 | tr '\n' ' ' | awk '{ print $1,$2,$4,$5}'";
	$versionsynooutput = ssh2_exec($connection, $versionsynocmd);
	stream_set_blocking($versionsynooutput, true);
	$versionsyno = stream_get_contents($versionsynooutput);

	// LECTURE CPU TEMP : DEBUT (POSITION 2 : LECTURE VERSION SYNO OK, CPU TEMP HS)
	$cputemp0Synocmd = "cat /sys/devices/platform/coretemp.0/temp2_input";
	$cputemp0output = ssh2_exec($connection, $cputemp0Synocmd);
	stream_set_blocking($cputemp0output, true);
	$cputemp0 = stream_get_contents($cputemp0output);
	// LECTURE CPU TEMP : FIN (POSITION 2)
}

Nota : évidemment, je ne laisse pas les deux blocs « POSITION 1 » et « POSITION 2 » en même temps, j’en commente un des deux.

Avec « POSITION 1 », j’obtiens ça :
image
Avec « POSITION 2 », la version est bonne, mais la température est tout simplement vide.

Je crois que ça renvoie chaque variable traitée dans un tableau derrière, mais n’étant pas dév et de loin, j’ai beaucoup de mal à comprendre, donc encore plus à trouver ce qu’il faut faire :frowning:

Est-ce que quelqu’un saurait ce qui ne va pas SVP ?

Bonjour

Le plugin a eu une mise à jour effectuée par Superbricolo.
Cela résout-il votre problème ?

1 J'aime

Bonsoir,

Pour moi, toujours pas de température. :pensive: :pensive:
image
Bonne soirée.
Loutre38.

Bonsoir,

Ouvrez et sauvegardez l’équipement, testez ensuite.

Bonjour,

Pour moi c’est OK la température avec la dernière version du plugin.
Merci :slight_smile:

Bonjour,

Sur les Raspberry Pi 3b en 64 bits, depuis la dernière mise à jour du Kernel, cela ne fonctionne plus non plus (même en ssh).

Salut tous,

Perso j’ai reperdu la température de mon syno avec la dernière maj.

Raison :

image

j’ai eu une mise à jour récemment, et j’ai du supprimer le facteur 1000, mais le chemin n’a pas changé depuis.

Je n’ai rien dans
/sys/bus/platform/devices/coretemp.0/hwmon/hwmon0/device/

[edit] mais j’ai
/sys/bus/platform/devices/coretemp.0/hwmon/hwmon0/device/hwmon/hwmo n0/temp2_input
!! je dois avoir un lien symbolique qque part ça loop, mais je n’ai jamais touché à ça…

Hello
Même matériel (et version DSM) et température NOK avec (et même avant) la dernière maj.

tu as modifié le chemin dans html/plugins/Monitoring/core/class/Monitoring.class.php ?

Une fois fait j’ai bien la remonté de cette température, mais ça sautera à la prochaine maj.

Aux autres possesseurs de syno pour qui le plugin fonctionne, vous avez quoi comme matos et version de DSM?

Non je n’ai pas modifié le fichier.
Je récupère toutes les températures avec monitoring2.
C’est simplement pour faire avancer et enrichir les retour d’infos.
Ceci dit, je viens de jeter un oeil sur un :

  • DS2413+ : il n’y a effectivement pas de /sys/devices/platform/coretemp.0/temp1_input, seulement temp2_input et temp3_input
  • RS3614xs+ : Il y en a 5 dont aucune ne correspond à la temp system récupérée en snmp.

D’ailleurs à lire ceci, Synology me semble très erratique sur les temp CPU mais plus fiable sur les temp system.
J’aurais donc tendance à dire trop spécifique pour le plugin.

Oui c’est ce que je disais plus haut : sur les Syno, le chemin pour les temp CPU change régulièrement suivant les versions de DSM et très souvent d’un modèle à l’autre :frowning:
En plus on trouve régulièrement des recopies (symboliques ou pas) de ces répertoires d’infos hardwares (ce que remonte @Bben 4 posts au-dessus).

:question: Je me demande s’il ne faudrait pas plutôt :

  • ajouter un paramètre dans le plugin (comme l’IP ou le compte SSH par exemple),
  • renseigné par défaut avec le chemin le plus courant dès qu’on coche la case « Synology »
  • mais où on peut manuellement corriger le chemin vers la temp CPU (ou système) qu’on veut.

:ballot_box_with_check: Comme ça, c’est paramétré et ça ne s’écrasera pas à chaque nouvelle version du plugin.