====== Logovanie ====== ===== Zapnutie logovania inicializacia kariet - windows PC ===== Ale najlepsi sposob je vynechanie atributu LogType. Jeho defaultna hodnota ma pozapinane vsetky potrebne logy. Ak netreba specifikovat ostatne atributy, je mozne vynechat cely riadok Logs. ===== Zapnutie logovania na citacke ===== Logovaci subor /tmp/ESlave.log Logovanie je mozne zapnut v skripte autorun_slave na ceste /opt/emtest/bin/autorun_slave A riadok FLAGS upravit: FLAGS=' --logOn' Po ulozeni zmien je potrebne vykonat restart, ALEBO rucne na zariadeni stopnut a zapnut aplikaciu prikazom: /opt/emtest/etc/init.d/slave_auto stop /opt/emtest/etc/init.d/slave_auto start ===== Zapnutie logovania na palubnom pocitaci ===== Logovaci subor /tmp/hlavny.log * Hodnota 0/1 - zapnute/vypnute logy - novy sposob, beru sa do uvahy atributy nodu LogType. Logovanie error-ov je defaultne vzdy zapnute a nie je mozne error-y vypnut. \\ * LogType hodnota > 1 (resp. 4294967295) - stare bitove zapinanie typov logovania, ktore nefunguje spravne a je neuser friendly Plne logovanie sa zapne: 1 Defaultne logovanie v balikoch je nastavene na logovanie errorov a warningov nasledovne: 1 Stary sposob zapinania logov vsetko alebo nic: 4294967295 ===== Zapnutie logovania na SelfServiceValidator (OCL) ===== Logovaci subor /tmp/validator.log Logovanie nie je mozne vypnut, loguje sa stale! ===== Nastavenie logovania v zdrojovych suboroch ===== V triede, v ktorej chceme používať logovanie je potrebné napísať: #define __USE_LOG__ #include "emlog.h" V programe na výpis logu slúžia najčastejšie príkazy: ETRACE, EINFO, EERROR, EWARN, EDUMPB EINFO("text"); //výpis infa ETRACE("text"); //výpis infa, ktory sluzi vyvojarom - pouzivat len pre ladenie EERROR("text"); //výpis error-ov EWARN("text"); //výpis warning-ov EDUMPB(data,size,msg) //výpis surových dát ETRACE je v podstate printf do logovacieho suboru. Ostatné sa dajú pozrieť v súbore emlog.h Súbor s logom sa nachádza na ceste /tmp/hlavny.log Ak ho chceme priebežne vypisovať tail -f /tmp hlavny.log // LOG options&levels // levels plati aj pre esyslog aj fsyslog #define L_ERR 0x00000001 #define L_WARN 0x00000002 #define L_TRACE 0x00000004 #define L_INFO 0x00000008 #define L_DUMP 0x00000010 #define L_TIMER 0x00000020 // options - esyslog aj fsyslog #define L_PID 0x00010000 // loguje sa PID #define L_SRCLINE 0x00020000 // loguje sa cislo riadku a nazov suboru zdrojoveho kodu, odkial bol log vyvolany #define L_FUNCTION 0x00040000 #define L_HEAD 0x00080000 // loguje sa hlavicka, zadana uzivatelom // options - fsyslog #define L_TIME 0x00100000 // loguje sa cas // options - esyslog #define L_CONS 0x00200000 // ak sa nepodari otvorit syslog, tak loguje na stdout #define L_PERR 0x00400000 // ak sa da loguje aj na stderr // preddefined options #define L_ALL 0xFFFFFFFF // vsetky options su zapnute #define L_DEBUG (L_ERR | L_WARN | L_TRACE | L_INFO | L_DUMP | L_PID | L_HEAD | L_TIME) #define L_RELEASE (L_ERR | L_WARN | L_INFO | L_PID | L_HEAD | L_TIME) #define L_VERBOSE_DEBUG (L_ERR | L_WARN | L_TRACE | L_DUMP | L_INFO | L_PID | L_HEAD | L_TIME | L_SRCLINE | L_FUNCTION)