#1 Le 21/05/2011, à 20:10
- sunkart
Script d'enregistrement des températures et charge CPU
Bonsoir,
Je cherche à faire un script qui toutes les 10min enregistrerai les différentes températures (CPU, M/B, CG) et la charge CPU, RAM, etc ...
Il me permettrait de tracer des courbes d'évolution avec le tableur d'open office.
Le problème est que je n'y connais rien au script ...
Est-ce qu'il y a des bouts de codes qui me permettrait de construire ça ? Je ne demande pas le script complet car je voudrais apprendre un peu quand même
Quelles sont les commandes à utiliser ?
Merci de votre aide.
Cyril
Cyril
Hors ligne
#2 Le 21/05/2011, à 20:28
- Rolinh
Re : Script d'enregistrement des températures et charge CPU
Salut,
tu voudrais faire ça dans quel langage?
Hors ligne
#3 Le 21/05/2011, à 20:35
- sunkart
Re : Script d'enregistrement des températures et charge CPU
Heu très bonne question ...
J'avais pensé à un scrip bash (mais je ne sais pas si c'est la meilleure solution en fait, n'y connaissant pas grand chose).
Cyril
Hors ligne
#4 Le 21/05/2011, à 20:46
- Rolinh
Re : Script d'enregistrement des températures et charge CPU
Boh c'est comme tu veux.
Bash c'est un peu la solution de facilité mais personnellement je trouve plutôt moche comme langage
J'ai écrit des scripts en lua qui récupèrent ces infos mais si tu veux cela en bash c'est pas bien compliqué non plus.
Hors ligne
#5 Le 21/05/2011, à 20:53
- sunkart
Re : Script d'enregistrement des températures et charge CPU
Je n'ai pas de préférence, donc va pour le lua
Cyril
Hors ligne
#6 Le 21/05/2011, à 21:10
- Rolinh
Re : Script d'enregistrement des températures et charge CPU
Tu veux que je te mâche le travail ou bien tu veux faire toi?
Tu voudrais le résultat comment? Dans un fichier?
Hors ligne
#7 Le 21/05/2011, à 21:29
- sunkart
Re : Script d'enregistrement des températures et charge CPU
Je veux bien que tu me mâches le travaille
Le faire pour une variable, j'essaierai de compléter ensuite par moi même.
Oui, dans un fichier que j'importerai dans Open Office pour le graphique.
Cyril
Hors ligne
#8 Le 21/05/2011, à 21:34
- Rolinh
Re : Script d'enregistrement des températures et charge CPU
Tu pourrais me donner un exemple de fichier formaté comme tu le veux stp?
Hors ligne
#9 Le 21/05/2011, à 21:58
- sunkart
Re : Script d'enregistrement des températures et charge CPU
Un truc simple de ce genre :
h;TempPU:TempM/B
h+10min;TempCPU;TempM/B
h+20min;TempCCPU;TempM/B
...
Cyril
Hors ligne
#10 Le 21/05/2011, à 22:05
- Rolinh
Re : Script d'enregistrement des températures et charge CPU
T'entends quoi par TempM/B?
EDIT: et pour le GPU, t'utilises quel pilote?
Dernière modification par Rolinh (Le 21/05/2011, à 22:27)
Hors ligne
#11 Le 21/05/2011, à 22:36
- sunkart
Re : Script d'enregistrement des températures et charge CPU
J'utilise le pilote NVidia.
TempM/B : température de la carte mère, je pensais récupérer l'info avec un grep sur le commande sensors (comme pour récupérer l'info et l'afficher dans un conky).
Cyril
Hors ligne
#12 Le 21/05/2011, à 22:44
- Rolinh
Re : Script d'enregistrement des températures et charge CPU
Ok.
T'as la température de la carte-mère via lm-sensors?
Hors ligne
#13 Le 21/05/2011, à 23:10
- sunkart
Re : Script d'enregistrement des températures et charge CPU
Oui, je te donne le résultat de sensors si besoin :
in0: +1.26 V (min = +0.00 V, max = +4.08 V)
in1: +4.08 V (min = +0.00 V, max = +4.08 V) ALARM
in2: +3.22 V (min = +0.00 V, max = +4.08 V)
in3: +4.08 V (min = +0.00 V, max = +4.08 V) ALARM
in4: +3.12 V (min = +0.00 V, max = +4.08 V)
in5: +1.52 V (min = +0.00 V, max = +4.08 V)
in6: +4.08 V (min = +0.00 V, max = +4.08 V) ALARM
in7: +4.08 V (min = +0.00 V, max = +4.08 V) ALARM
Vbat: +3.09 V
fan1: 3308 RPM (min = 0 RPM)
fan2: 0 RPM (min = 0 RPM)
temp1: +48.0°C (low = -1.0°C, high = +127.0°C) sensor = thermistor
temp2: +43.0°C (low = -1.0°C, high = +127.0°C) sensor = thermistor
temp3: -128.0°C (low = -1.0°C, high = +127.0°C) sensor = disabled
cpu0_vid: +1.550 V
temp1 le CPU et temp2 la M/B.
Cyril
Hors ligne
#14 Le 21/05/2011, à 23:15
- sinbad83
Re : Script d'enregistrement des températures et charge CPU
Salut,
tu as un outil qui fait cela très bien tout seul avec tous les graphes sur de nombreux paramètres, munin.
http://doc.ubuntu-fr.org/munin et http://coursinforev.ovh.org/dokuwiki/do … unin#munin
Dernière modification par sinbad83 (Le 21/05/2011, à 23:16)
La connaissance n'est pas une denrée rare, il faut la partager avec les autres.
Linux registered #484707
Site: www.coursinforev.org/doku.php
Desktop AMD Ryzen 5-3600, RAM 16GB, Ubuntu 20.10, HP Pavillon G6 Ubuntu 20.10 et Ten, Serveur Ubuntu 18.04
Hors ligne
#15 Le 22/05/2011, à 08:54
- sunkart
Re : Script d'enregistrement des températures et charge CPU
Hello
Merci pour l'info. Je vais regarder pour munin, mais je veux aussi tester le script
Cyril
Hors ligne
#16 Le 22/05/2011, à 11:52
- Rolinh
Re : Script d'enregistrement des températures et charge CPU
Je te fais un csv. Par contre, tu comptes le faire tourner combien de temps?
Genre, utiliser un cron qui lance le script toutes les 10 minutes?
Ou bien tu veux un truc pas propre que tu lances une fois...? (évidemment, je plussoie la première solution...)
Bon, pour un début à l'arrache, tu as ça:
--[[
Purpose of this script is the get the temperature of CPU et GPU
and output it to a file (temperatures.csv)
]]--
function filllogfile()
io.write(os.date("%X"),";", cputemp(), ";", gputemp(), "\n")
end
function cputemp()
local temp
io.input("/sys/bus/acpi/devices/LNXTHERM\:00/thermal_zone/temp")
temp = io.read("*number")/1000
return temp
end
function gputemp()
local temp
temp = tonumber(io.popen("nvidia-settings -q GPUCoreTemp -t"):read("*all"))
return temp
end
io.output(io.open("temperatures.csv", "a"))
filllogfile()
io.close()
Il créé un fichier nommé temperatures.csv, dont le contenu est de cette forme:
11:55:30;38.5;60
Soit, respectivement, l'heure, la température CPU et la température GPU.
Comme c'est un csv, tu peux l'ouvrir directement avec openoffice/libreoffice calc.
Dernière modification par Rolinh (Le 22/05/2011, à 12:01)
Hors ligne
#17 Le 22/05/2011, à 12:01
- sunkart
Re : Script d'enregistrement des températures et charge CPU
Je ne sais pas ce qu'est un "cron" ...
Je suppose que la première solution est moins lourdes, puisqu'il s'exécutera toutes les 10 min (si j'ai bien compris )
Donc, je préfère la première solution.
En terme d'exécution, il enregistre les infos autant de temps que le PC est allumé.
Cyril
Hors ligne
#18 Le 22/05/2011, à 12:17
- Rolinh
Re : Script d'enregistrement des températures et charge CPU
Un cron c'est un daemon qui te permet d'automatiser des tâches. Va voir la doc sur cron
L'idée, c'est que le script s'occupe juste de récupérer les infos et de les mettres dans le fichier temperatures.csv et c'est le cron qui décide quand le lancer.
C'est le moyen le plus propre de faire ça .
Par contre, moi je n'ai pas d'infos sur la température de la carte mère. Tu pourrais me donner le retour de cette commande:
ls /sys/bus/acpi/devices
Sinon, tu voulais quoi encore? L'utilisation de la RAM et du CPU?
Dernière modification par Rolinh (Le 22/05/2011, à 12:26)
Hors ligne
#19 Le 22/05/2011, à 12:25
- sunkart
Re : Script d'enregistrement des températures et charge CPU
La commande que tu m'as donné me retourne que c'est un dossier.
Je vais commencer juste avec les températures, j'essaierai de compléter le script avec d'autres infos par moi-même. Si je n'y arrive pas, je pourrais toujours de poser la question
Cyril
Hors ligne
#20 Le 22/05/2011, à 12:26
- Rolinh
Re : Script d'enregistrement des températures et charge CPU
Ok. Oui, je voulais mettre ls
Hors ligne
#21 Le 22/05/2011, à 12:33
- sunkart
Re : Script d'enregistrement des températures et charge CPU
Voici le contenu de devices :
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 ATK0110:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:00/ATK0110:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:01 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:01
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:02 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:02
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:03 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:03
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:04 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:04
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:05 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:04/device:05
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:06 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:04/device:05/device:06
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:07 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:04/device:05/device:07
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:08 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:04/device:08
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:09 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:04/device:08/device:09
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:0a -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:04/device:08/device:0a
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:0b -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:0b
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:0c -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:0b/device:0c
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:0d -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:0b/device:0c/device:0d
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:0e -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:0b/device:0c/device:0e
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:0f -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:0b/device:0f
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:10 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:0b/device:0f/device:10
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:11 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:0b/device:0f/device:11
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:12 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:12
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:13 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:13
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:14 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:14
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:15 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:15
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:16 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:16
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:17 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:17
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 device:18 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:18
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 LNXCPU:00 -> ../../../devices/LNXSYSTM:00/LNXCPU:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 LNXCPU:01 -> ../../../devices/LNXSYSTM:00/LNXCPU:01
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 LNXPWRBN:00 -> ../../../devices/LNXSYSTM:00/LNXPWRBN:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 LNXSYBUS:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 LNXSYSTM:00 -> ../../../devices/LNXSYSTM:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 LNXTHERM:00 -> ../../../devices/LNXSYSTM:00/LNXTHERM:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0000:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:00/PNP0000:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0100:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:00/PNP0100:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0103:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:00/PNP0103:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0200:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:00/PNP0200:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0400:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:00/PNP0400:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0501:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:00/PNP0501:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0700:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:00/PNP0700:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0800:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:00/PNP0800:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0A03:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0B00:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:00/PNP0B00:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C01:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C01:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C02:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:00/PNP0C02:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C02:01 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:00/PNP0C02:01
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C02:02 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:00/PNP0C02:02
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C02:03 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/PNP0C02:03
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C04:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0A03:00/device:00/PNP0C04:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0C:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0C:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:00 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:00
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:01 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:01
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:02 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:02
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:03 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:03
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:04 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:04
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:05 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:05
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:06 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:06
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:07 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:07
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:08 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:08
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:09 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:09
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:0a -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:0a
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:0b -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:0b
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:0c -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:0c
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:0d -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:0d
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:0e -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:0e
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:0f -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:0f
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:10 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:10
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:11 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:11
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:12 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:12
lrwxrwxrwx 1 root root 0 2011-05-22 12:24 PNP0C0F:13 -> ../../../devices/LNXSYSTM:00/LNXSYBUS:00/PNP0C0F:13
Cyril
Hors ligne
#22 Le 22/05/2011, à 12:38
- Rolinh
Re : Script d'enregistrement des températures et charge CPU
Mmm, je ne sais pas dans quel fichier je peux récupérer la température de la carte mère...
Sinon, c'est bon, il marche le script chez toi?
lua lescript.lua
Hors ligne
#23 Le 22/05/2011, à 12:49
- sunkart
Re : Script d'enregistrement des températures et charge CPU
lua monitoring.lua
lua: monitoring.lua:13: bad argument #1 to 'input' (/sys/bus/acpi/devices/LNXTHERM:00/thermal_zone/temp: No such file or directory)
stack traceback:
[C]: in function 'input'
monitoring.lua:13: in function 'cputemp'
monitoring.lua:7: in function 'filllogfile'
monitoring.lua:28: in main chunk
[C]: ?
Cyril
Hors ligne
#24 Le 22/05/2011, à 12:54
- Rolinh
Re : Script d'enregistrement des températures et charge CPU
Bizarre, tu n'as pas ce fichier?
ls /sys/bus/acpi/devices/LNXTHERM:00/thermal_zone
Hors ligne
#25 Le 22/05/2011, à 12:58
- sunkart
Re : Script d'enregistrement des températures et charge CPU
Apparemment non.
Dans le script, où est-ce que tu configures le refresh ?
Cyril
Hors ligne