Oui, effectué hier, mais j’avais laissé deux flags initialisation cochés, et comme j’ai eu l’info je les ai corrigés…
je touche pas au log et je laisse tourner.
Merci
Thierry
Sauf que dans les log tu ne verra rien puisqu’ils sont effacé au demarrage du démon
Oui je sais, c’est les premières info (négative) que j’ai eu au redémarrage (log Info créé par toi ?), donc j’ai regardé et corrigé ces deux flags.
je viens de le faire
bon, je viens de faire les dernières mises a jour mais je rencontre encore des redémarrages.
est ce qu’il est possible de copier les logs du deamon dans un fichier accessible depuis l’interface de configuration du plugin? et perso, le reset des logs du plugin a chaque démarrage du deamon devrait être supprimé, il y a déjà une limite de logs paramétré.
je comprends pas pourquoi le deamon plante…
Dès que le deamon plante , tu récupère rapidement le log dans la partie analyse, et tu as normalement les infos avant redémarrage qui sont conservées, j’ai repéré une erreur comme cela, et à prioris, je n’ai pas eu de redémarrage non volontaire.
le problème c’est que dès que le deamon redémarre (5 min apres) les logs sont plus la. et le plantage est aléatoire … d’ou la demande de copie du fichier log pour éviter qu’il soit supprimé. je vais essayer un truc
Avec le plugin Jeelog, tu peut enregistrer les logs en temps réel…
Si tu désactive la gestion automatique, il ne va pas redémarrer et ton log pas effacé ?
Je viens à l’instant d’avoir un truc pas courant : Erreur sur la fonction cron15 du plugin : connect failed
…
je viens de modifier la config pour qu’un nouveau fichier log soit créé chaque fois que le deamon redémarre:
dans le fichier eibd\core\class\eibd.class.php a partir de la ligne 734
$datetmp = date("Y-m-d-H-i-s");
exec("sudo touch /var/log/knx-".$datetmp.".log");
exec("sudo chmod 777 /var/log/knx-".$datetmp.".log");
$cmd = '';
switch(config::byKey('KnxSoft', 'eibd')){
case 'knxd':
$clientAddrs = explode('.',config::byKey('EibdGad', 'eibd'));
$clientAddrs[count($clientAddrs)-1] +=1;
$cmd .= 'knxd --daemon=/var/log/knx-'.$datetmp.'.log --pid-file=/var/run/knx.pid';
if(config::byKey("log::level::eibd")[1000] != 1)
$cmd .= ' -t1023';
$cmd .= ' --eibaddr='.config::byKey('EibdGad', 'eibd').' --client-addrs='.implode('.',$clientAddrs).':'.config::byKey('EibdNbAddr', 'eibd');
break;
case 'eibd':
$cmd .= '/usr/local/bin/eibd --daemon=/var/log/knx-'.$datetmp.'.log --pid-file=/var/run/knx.pid';
if(config::byKey("log::level::eibd")[1000] != 1)
$cmd .= ' -t1023';
$cmd .= ' --eibaddr='.config::byKey('EibdGad', 'eibd');
break;
}
if(config::byKey('KnxSoft', 'eibd') == 'knxd' && config::byKey('ServeurName', 'eibd') !='')
$cmd .= ' --Name='.config::byKey('ServeurName', 'eibd');
if(config::byKey('Discovery', 'eibd'))
$cmd .= ' -D';
if(config::byKey('Routing', 'eibd'))
$cmd .= ' -R';
if(config::byKey('Tunnelling', 'eibd'))
$cmd .= ' -T';
if(config::byKey('Discovery', 'eibd') || config::byKey('Routing', 'eibd') || config::byKey('Tunnelling', 'eibd'))
$cmd .= ' -S';
$cmd .= ' --listen-tcp='.config::byKey('EibdPort', 'eibd');
if(config::byKey('KnxSoft', 'eibd') == 'knxd')
$cmd .= ' -b ';
if($cmd != ''){
if(config::byKey('TypeKNXgateway', 'eibd') == 'usb'){
$USBaddr = explode(':',config::byKey('KNXgateway', 'eibd'));
$cmdUSB = sprintf("/dev/bus/usb/%'.03d/%'.03d",$USBaddr[0],$USBaddr[1]);
log::add('eibd', 'debug', "Droit d'acces sur la passerelle USB " . $cmdUSB);
exec("sudo chmod 777 ".$cmdUSB. ' >> ' . log::getPathToLog('eibd') . ' 2>&1');
}
$cmd .= ' '. config::byKey('TypeKNXgateway', 'eibd') . ':' . config::byKey('KNXgateway', 'eibd');
if(isset($cmd)){
$cmd .= ' >> /var/log/knx-'.$datetmp.'.log 2>&1';
log::add('eibd','info', '[Start] '.$cmd);
exec($cmd);
cache::set('eibd::demonState',true, 0);
}
}
comme cela, j’aurais les logs du deamon
commande lancée:
[Start] knxd --daemon=/var/log/knx-2021-06-09-15-00-05.log --pid-file=/var/run/knx.pid -t1023 --eibaddr=0.0.1 --client-addrs=0.0.2:3 --Name=Jeedom -D -T -S --listen-tcp=6720 -b ipt:192.168.3.210:3671 >> /var/log/knx-2021-06-09-15-00-05.log 2>&1
[2021-06-09 15:00:05][DEBUG] : Lancement du Bus Monitor
reste plus qu’a attendre
Le fichier de log que tu as modifier est celui de knxd et pas celui du plugin
Pour les plugin c’est jeedom qui se charge de la gestion
Il faut que tu fasse une copie plutot dans la fonction deamon_start avant la suppression
Edit
A tu reinstallé les dependances
Moi et le code…, j’ai connu que la bande perforée et les roues codeuse pour dialoguer avec les bécanes
en fait je cherche a savoir pourquoi le deamon tombe. et je suis pas tout le temps devant mon PC
bon, j’ai cela a la fin du log :
Jeedom: Layer 6 [12:B.ipt/Conn 926.403] is OK
Jeedom: Layer 6 [ 4:server/Server 926.403] is OK
Jeedom: Layer 6 [22:A.tcp/ConnS 926.403] is OK
Jeedom: Layer 6 [ 8:A.tcp/inet 926.403] is OK
Jeedom: Layer 6 [ 1:main 926.403] OK
Jeedom: Layer 6 [ 2:main/L 926.403] OK L
Jeedom: Layer 0 [13:B.ipt/ipt 926.403] Send(010): 06 10 04 21 00 0A 04 B6 2F 00
Jeedom: Layer 0 [13:B.ipt/ipt 927.403] Recv(025): 06 10 04 20 00 19 04 B6 2F 00 29 00 BC E0 11 2C 0A 0C 05 00 80 00 00 00 00
Jeedom: Layer 1 [13:B.ipt/ipt 927.403] Send(004): 04 B6 2F 00
Jeedom: Layer 0 [13:B.ipt/ipt 927.403] Send(010): 06 10 04 21 00 0A 04 B6 2F 00
Jeedom: Layer 0 [13:B.ipt/ipt 928.404] Recv(016): 06 10 02 09 00 10 B6 B6 08 01 C0 A8 03 D2 0E 57
Jeedom: Layer 1 [13:B.ipt/ipt 928.404] SendDis(002): B6 00
Jeedom: Layer 1 [13:B.ipt/ipt 928.404] Send(002): B6 00
Jeedom: Layer 0 [13:B.ipt/ipt 928.404] Send(008): 06 10 02 0A 00 08 B6 00
Jeedom: Layer 1 [13:B.ipt/ipt 928.504] Connect timed out
Jeedom: Layer 0 [13:B.ipt/ipt 928.505] Close D
Jeedom: Layer 5 [12:B.ipt/Conn 928.505] up => error
Jeedom: Layer 4 [12:B.ipt/Conn 928.505] link state changed: error
Jeedom: Layer 4 [ 1:main 928.505] check start
Jeedom: Layer 4 [ 1:main 928.505] check end: want_up 1 some 1>1 all 1>0, going 0 up 2 down 1
Jeedom: F00000105: [12:B.ipt] Link down, terminating
Jeedom: Layer 4 [ 1:main 928.505] trigger Going down
Jeedom: Layer 4 [12:B.ipt/Conn 928.505] R Stopping
Jeedom: Layer 5 [12:B.ipt/Conn 928.505] error => >down
Jeedom: Layer 4 [12:B.ipt/Conn 928.505] link state changed: error
Jeedom: Layer 4 [ 4:server/Server 928.505] R Stopping
Jeedom: Layer 5 [ 4:server/Server 928.505] up => >down
Jeedom: Layer 8 [18:/driver 928.505] CloseD
Jeedom: Layer 0 [ 4:server/Server 928.505] Close D
Jeedom: Layer 5 [ 4:server/Server 928.505] >down => down
Jeedom: Layer 4 [ 4:server/Server 928.505] link state changed: down
Jeedom: Layer 4 [ 4:server/Server 928.505] link state changed: down
Jeedom: Layer 4 [22:A.tcp/ConnS 928.505] R Stopping
Jeedom: Layer 5 [22:A.tcp/ConnS 928.505] up => >down
Jeedom: Layer 5 [22:A.tcp/ConnS 928.505] L Stopping
Jeedom: Layer 5 [22:A.tcp/ConnS 928.505] >down => down
Jeedom: Layer 4 [22:A.tcp/ConnS 928.505] link state changed: down
Jeedom: Layer 4 [22:A.tcp/ConnS 928.505] link state changed: down
Jeedom: Layer 4 [ 8:A.tcp/inet 928.505] R Stopping
Jeedom: Layer 5 [ 8:A.tcp/inet 928.505] up => >down
Jeedom: Layer 8 [ 8:A.tcp/inet 928.505] StopServer
Jeedom: Layer 8 [20:A.tcp/CConn 928.505] ClientConnection 0.0.2 closing
Jeedom: Layer 3 [ 1:main 928.505] Release 0.0.2
Jeedom: Layer 3 [22:A.tcp/ConnS 928.505] unregisterLink: A.tcp_22
Jeedom: Layer 8 [20:A.tcp/CConn 928.505] Exiting
Jeedom: Layer 7 [20:A.tcp/CConn 928.505] CloseGroupSocket
Jeedom: Layer 5 [ 8:A.tcp/inet 928.505] >down => down
Jeedom: Layer 4 [ 8:A.tcp/inet 928.505] link state changed: down
Jeedom: Layer 4 [ 8:A.tcp/inet 928.505] link state changed: down
Jeedom: Layer 4 [ 1:main 928.505] check start
Jeedom: Layer 4 [23:A.tcp/LineDr 928.505] CloseGroupSocket
Jeedom: Layer 4 [ 4:server/Server 928.505] is down
Jeedom: Layer 4 [ 8:A.tcp/inet 928.505] is down
Jeedom: Layer 4 [ 1:main 928.505] check end: want_up 0 some 1>0 all 0>0, going 0 up 0 down 3
Jeedom: Layer 4 [ 1:main 928.505] down
Jeedom: Layer 4 [ 1:main 928.505] deleting
Jeedom: Layer 2 [13:B.ipt/ipt 928.505] Close A
Jeedom: Layer 8 [ 4:server/Server 928.505] Close E
Jeedom: Layer 4 [ 1:main 928.505] deleted.
je vois un connect time out mais je suis pas capable de comprendre la cause
pour etre sur, je vais redémarrer ma passerelle
Je ne suis pas sur qu’avec les log de knxd on puisse trouvé le probleme du demon
Il faut les log du plugin