Bonjour,
J’espère être au bon endroit même si la solution qui m'irait, serait de ne pas avoir de scripts.
Comment récupérer dans un ou plusieurs fichiers texte , les données issues des capteurs? J’aimerais les archiver et surtout les utiliser à d'autre fins (envoie vers d'autre systèmes, transfert, comparaison et autre)
Je sais activer le log domoticz avec l'option -log en ligne de commande. Cela ne donne pas d'info sur les valeurs récupérées par les capteurs.
J'ai bien vu ce sujet. Mais l'acces à une base de donnée complique mon projet, même si je suis sur linux.
viewtopic.php?f=8&t=2065
N'y aurait il pas plus simple et basique pour faire des fichiers txt avec les données capteurs de la journée?
Merci
Log capteurs en *.txt
Re: Log capteurs en *.txt
tout ce que j'ai trouvé ici...ca serait :
un événement geré par Blocky, qui appel un *.sh , qui lance un Json, qui va écrire la valeurs dans un fichier. Quelle complication!
Ou alors piocher dans la base de donnée, mais comment?
un événement geré par Blocky, qui appel un *.sh , qui lance un Json, qui va écrire la valeurs dans un fichier. Quelle complication!
Ou alors piocher dans la base de donnée, mais comment?
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: Log capteurs en *.txt
Salut et bienvenu,
effectivement c'est compliqué, j'ai plus simple
crée un fichier dans ton dossier lua nommé script_device_logs.lua
dont voici le contenu
adapte la liste des capteurs que tu veux loguer et le chemin du dossier cible
effectivement c'est compliqué, j'ai plus simple
crée un fichier dans ton dossier lua nommé script_device_logs.lua
dont voici le contenu
adapte la liste des capteurs que tu veux loguer et le chemin du dossier cible
Code : Tout sélectionner
--[[
script_device_logs.lua
création et écriture de fichiers de logs suivant les capteurs renseigné dans le tableau
--]]
-- tableau listant les capteurs à loguer
local capteurs = {}
capteurs['1'] = 'exterieur'
capteurs['2'] = 'chambre'
capteurs['3'] = 'salon'
capteurs['4'] = 'thomas'
capteurs['5'] = 'CPU_Usage'
-- fin du tableau
-- emplacement des fichiers de log
local racine = '/home/pi/domoticz/scripts/lua/'
-- si l'un des capteurs subit une mise à jour, écrire la nouvelle valeur dans un fichier portant son nom
for n, file in pairs(capteurs) do
if devicechanged[file] then
f = io.open(racine..file..'.txt',"a")
f:write(os.date("%c")..' '..devicechanged[file]..'\n')
print('Write <font color="blue">'..file..'.txt</font> add: <font color="blue">'..os.date("%c")..' '..devicechanged[file]..'</font>')
f:close()
end
end
-- fin
commandArray = {}
return commandArray
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
Re: Log capteurs en *.txt
Merci Vil1driver,
Je vais essayer cela des que je peux.
remis
Je vais essayer cela des que je peux.
remis
Re: Log capteurs en *.txt
Bravo , ca a marché du premier coup! Je sents la maîtrise car tu n'as pas fait une seule erreur de syntaxe!
J'ai simplement modifié ces deux lignes qui me concernent:
local racine = '/home/remi/domoticz/scripts/lua/'
puisque mon install sur ubuntu s'est faite dans mon home
ainsi que le nom des capteurs qui doit correspondre au nom visible de l'onglet dispositif dans le champs ''nom'' a droite de ''unit''
On a alors deux fichiers qui se nomment nomcapteur.txt , qui se remplisse avec des lignes de la forme:
Tue Nov 8 22:05:06 2016 19,5
a chaque écriture on a le log principal visible en ligne de commande qui dit :
2016-11-08 22:12:00.178 (comusbuno) Temp (TempProMini)
2016-11-08 22:12:05.031 LUA: Write <font color="blue">TempNano.txt</font> add: <font color="blue">Tue Nov 8 22:12:05 2016 19.5</font>
tout va bien.Je n'ai pas encore compris l’intérêt des balises html, mais ca va venir.
L'etape suivante sera de faire un nouveau fichier par jour.J'envisage d'envoyer quotidiennement par GPRS les logs de cette machine déconnectée du net et vivant sur batterie. J'en suis pas là....mais déja un grand pas grâce a toi.
J'ai simplement modifié ces deux lignes qui me concernent:
local racine = '/home/remi/domoticz/scripts/lua/'
puisque mon install sur ubuntu s'est faite dans mon home
ainsi que le nom des capteurs qui doit correspondre au nom visible de l'onglet dispositif dans le champs ''nom'' a droite de ''unit''
On a alors deux fichiers qui se nomment nomcapteur.txt , qui se remplisse avec des lignes de la forme:
Tue Nov 8 22:05:06 2016 19,5
a chaque écriture on a le log principal visible en ligne de commande qui dit :
2016-11-08 22:12:00.178 (comusbuno) Temp (TempProMini)
2016-11-08 22:12:05.031 LUA: Write <font color="blue">TempNano.txt</font> add: <font color="blue">Tue Nov 8 22:12:05 2016 19.5</font>
tout va bien.Je n'ai pas encore compris l’intérêt des balises html, mais ca va venir.
L'etape suivante sera de faire un nouveau fichier par jour.J'envisage d'envoyer quotidiennement par GPRS les logs de cette machine déconnectée du net et vivant sur batterie. J'en suis pas là....mais déja un grand pas grâce a toi.
-
vil1driver
- Messages : 5661
- Inscription : 30 janv. 2015, 11:07
- Localisation : Rennes (35)
Re: Log capteurs en *.txt
Les balises html c'est pour la coloration du texte dans la page de log de domoticz, c'est plus sympa a lire..
Tu dois avoir une version de domoticz qui date un peu.
MAJ = VIDER LE CACHE(<-Clicable)
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien
/!\Les mises à jour de Domoticz sont souvent sources de difficultés, ne sautez pas dessus
modules.lua
Un ex domoticzien