diff options
author | Zdenek Prikryl <zdeny@dhcp-lab-218.englab.brq.redhat.com> | 2009-05-12 15:39:08 +0200 |
---|---|---|
committer | Zdenek Prikryl <zdeny@dhcp-lab-218.englab.brq.redhat.com> | 2009-05-12 15:39:08 +0200 |
commit | 099ae27f9a2b374aedbfa3b75925b8f6ba475b45 (patch) | |
tree | 4571dd79362b24ceb6a7b2b6f66548a02a2a8ba4 /lib/Plugins/KerneloopsScanner.h | |
parent | c720d6077b907f944573cd09fd84503b592c1526 (diff) | |
download | abrt-099ae27f9a2b374aedbfa3b75925b8f6ba475b45.tar.gz abrt-099ae27f9a2b374aedbfa3b75925b8f6ba475b45.tar.xz abrt-099ae27f9a2b374aedbfa3b75925b8f6ba475b45.zip |
new scanner, it is used by abrt's cron
Diffstat (limited to 'lib/Plugins/KerneloopsScanner.h')
-rw-r--r-- | lib/Plugins/KerneloopsScanner.h | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/lib/Plugins/KerneloopsScanner.h b/lib/Plugins/KerneloopsScanner.h new file mode 100644 index 0000000..f823d1f --- /dev/null +++ b/lib/Plugins/KerneloopsScanner.h @@ -0,0 +1,38 @@ +#ifndef KERNELOOPSSCANNER_H_ +#define KERNELOOPSSCANNER_H_ + +#include "KerneloopsSysLog.h" +#include "Plugin.h" +#include "Action.h" + +class CKerneloopsScanner : public CAction +{ + private: + std::string m_sSysLogFile; + CSysLog m_pSysLog; + bool m_bSysLogFileScanned; + + void SaveOopsToDebugDump(); + void ScanDmesg(); + void ScanSysLogFile(const char *filename, int issyslog); + void WriteSysLog(int m_nCount); + public: + CKerneloopsScanner() : + m_sSysLogFile("/var/log/messages"), + m_bSysLogFileScanned(false) + {} + virtual ~CKerneloopsScanner() {} + virtual void Run(const std::string& pActionDir, + const std::string& pArgs); + virtual void LoadSettings(const std::string& pPath); +}; + +PLUGIN_INFO(ACTION, + CKerneloopsScanner, + "KerneloopsScanner", + "0.0.1", + "Save new Kerneloops crashes into debug dump dir", + "anton@redhat.com", + "http://people.redhat.com/aarapov"); + +#endif /* KERNELOOPSSCANNER_H_ */ |