Commit Graph

28 Commits

Author SHA1 Message Date
esanchezm 7427997eee 2008-11-28 Esteban Sanchez <estebans@artica.es>
* modules/pandora_module.[cc,h]: Added an async property. Added
	getLatestOutput() to get the latest output of a module.

	* modules/pandora_module_factory.cc: Parse async token in modules.

	* modules/pandora_module_list.[cc,h]: It can create empty lists now
	and add modules using new addModule() function.

	* modules/pandora_module_service.[cc,h]: Added an async thread to
	watch services events and track services status changes quickly and
	asynchronously.

	* windows/pandora_wmi.cc: Style correction.

	* pandora_windows_service.[cc,h]: Pandora Windows service object is
	now single instance, so the instance to the running service can be
	accessed anywhere (useful in async threads). The XML generation and
	sending process has been moved to a new function called sendXml()
	which is thread-safe.

	* windows_service.h: Some properties are now protected instead of
	public to make it easier the singleton pattern in child classes.

	* main.cc: Adopted to singleton pattern in Pandora windows service.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1268 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2008-11-28 10:51:03 +00:00
ramonn f963e9813d 2008-07-31 Ramon Novoa <rnovoa@artica.es>
* win32/pandora_windows_service.cc: Small fixes.
        * win32/modules/pandora_module.cc: time() and localtime() are used
          instead of GetSystemTime().
        * win32/pandora.h: Changed all instances of "Pandora" to
          "Pandora FMS".




git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@989 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2008-07-31 10:31:58 +00:00
esanchezm 654405d451 2008-07-09 Esteban Sanchez <estebans@artica.es>
* pandora_strutils.[cc,h]: Added strUnicodeToAnsi().

        * modules/pandora_module_logevent.cc, pandora_windows_service.[cc,h],
        windows/pandora_wmi.h: Tabs and blankspace style correction.

        * windows/pandora_wmi.cc: Convert result in getEventList() to ANSI,
        which was causing some BADXML errors on server. Tabs and blankspace 
        style correction.

        * bin/PandoraAgent.exe: Updated to last commit.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@946 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2008-07-09 12:46:22 +00:00
ramonn 7282c1eae4 2008-06-13 Ramon Novoa <rnovoa@artica.es>
* win32/PandoraAgent.dev: Updated.
        * win32/windows/pandora_wmi.cc, win32/windows/pandora_wmi.h,
          win32/pandora_windows_service.cc, win32/modules/pandora_module.h,
          win32/modules/pandora_module_logevent.cc,
          win32/modules/pandora_module_logevent.h,
          win32/modules/pandora_module_factory.cc,
          win32/modules/pandora_module_list.cc,
          win32/modules/pandora_module.c: Added a new module that checks for
          log events using WMI queries.
        * bin/pandora_agent.conf: Added encoding option and a Logevent module
          declaration example.




git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@857 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2008-06-13 10:32:47 +00:00
esanchezm 6d05eec1c6 2008-06-11 Esteban Sanchez <estebans@artica.es>
* pandora_windows_service.cc, modules/pandora_module_list.cc: Deleted
        debug output.

        * modules/pandora_module_exec.cc: Reindented the code. Add blank
        output to the module if there were nothing to read (like when the
        executions return nothing).

        * bin/PandoraAgent.exe: Updated to commit.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@854 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2008-06-11 14:58:53 +00:00
ramonn 25245aa4d5 2008-06-10 Ramon Novoa <rnovoa@artica.es>
* win32/PandoraAgent.dev: Updated.
        * win32/misc/md5.c, win32/misc/md5.h: Added to repository.
          Implementation of MD5 (RFC 1321).
        * win32/misc/pandora_file.cc, win32/misc/pandora_file.h: Added remote
          configuration checking related functions.
        * win32/pandora_windows_service.cc, win32/pandora_windows_service.h:
          Added support for remote configuration checking.




git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@848 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2008-06-10 09:50:29 +00:00
esanchezm 9cc297d7a6 2008-04-09 Esteban Sanchez <estebans@artica.es>
* modules/pandora_data.[cc,h]: Added to repository. Implements a
        Pandora_Data object, which holds a value and the timestamp when it
        was created.

        * modules/pandora_module.[cc,h]: It holds now a list of Pandora_Data
        objects. The XML is generated based on the size of this list. Output
        property has became obsolete and child modules must use setOutput().

        * modules/pandora_module_cpuusage.cc,
        modules/pandora_module_exec.cc,
        modules/pandora_module_freedisk.cc,
        modules/pandora_module_freememory.cc,
        modules/pandora_module_odbc.cc, modules/pandora_module_proc.cc,
        modules/pandora_module_service.cc: Updated to new Pandora_Module
        parent class.

        * modules/pandora_module_list.cc: Deleted debug output.

        * pandora.cc: Now uses SYSTEMTIME instead of old time_t.

        * pandora_windows_service.[cc,h]: Added Ramon Novoa to authors. Added
        a new configuration token transfer_interval which sets the interval
        where the data file will be sent to the server. If the current
        interval token is lower than this transfer interval, the data will be
        added into a data_list XML tag.

        * PandoraAgent.dev: Added new files.

        * bin/PandoraAgent.exe: Updated to last commit.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@803 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2008-04-09 15:48:06 +00:00
esanchezm b5408583c7 2008-04-02 Esteban Sanchez <estebans@artica.es>
* pandora_agent_conf.[cc,h]: Object adapted to be a singleton so it
        could be used in many parts of the code who can't access to it before.

        * ftp/pandora_ftp_test.cc, ssh/pandora_ssh_test.cc: Adapted to
        configuration object singleton.

        * modules/pandora_module_odbc.[cc,h]: Added to repository. Implements
        a ODBC interface to make SQL queries.

        * modules/pandora_module.[cc,h], modules/pandora_module_list.cc,
        modules/pandora_module_factory.cc: Added ODBC module support.

        * bin/pandora_agent.conf: Added a ODBC module example.

        * PandoraAgent.dev: Added new files to project.

        * bin/PandoraAgent.exe: Updated to last commit.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@789 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2008-04-02 16:01:35 +00:00
ramonn 8e8c145d85 2008-03-25 Ramon Novoa <rnovoa@artica.es>
* ftp/pandora_ftp_test.cc, installer/pandora_1.3.mpi,
          installer/README.txt, pandora_windows_service.cc,
          bin/pandora_agent.conf: Variable ftp_password removed from
          configuration file, server_pwd is used instead.




git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@763 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2008-03-25 17:00:32 +00:00
ramonn daaca58b6a 2008-03-14 Ramon Novoa <rnovoa@artica.es>
* win32/pandora_windows_service.cc: Added support for Tentacle file transfers.
	* win32/pandora_windows_service.h: Added support for Tentacle file transfers.




git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@750 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2008-03-14 13:41:31 +00:00
esanchezm 52fa820276 2007-09-06 Esteban Sanchez <estebans@artica.es>
* pandora_windows_service.cc: Date is now filled with zeros to the
        left and two digits.

        * bin/PandoraAgent.exe: Updated to last commmit.


git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@645 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-09-06 15:21:13 +00:00
esanchezm 4be37591f5 2007-09-05 Esteban Sanchez <estebans@artica.es>
* windows/pandora_wmi.cc: Fixed a bug that return 0 in some cases of
        free disk space.

        * pandora.cc: Renamed debug file to pandora_debug.log

        * pandora_windows_service.cc: Fixed a blank space.

        * bin/PandoraAgent.exe: Updated to last commit.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@643 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-09-05 16:22:26 +00:00
esanchezm 7b10bb26b2 2007-08-29 Esteban Sanchez <estebans@artica.es>
* pandora_windows_service.cc: Fixed a typo. Disconnect ftp client when
        an error happened.

        * ftp/pandora_ftp_client.cc: Set network timeout and ftp timeout.
        Ignore error when executing moving operations, this is compatible
        with FTP jails

        * windows/pandora_wmi.cc: Improved WQL queries and fixed some leaks.


git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@630 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-08-29 14:30:09 +00:00
esanchezm 10ee4c4264 2007-08-28 Esteban Sanchez <estebans@artica.es>
* main.cc: Fixed an error with previous commit.

        * pandora_windows_service.cc, ftp/pandora_ftp_client.cc: Reduced log
         level.

        * bin/PandoraAgent.exe: Updated to last commit.


git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@624 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-08-28 10:47:58 +00:00
esanchezm c89f61a9d9 2007-08-23 Esteban Sanchez <estebans@artica.es>
* pandora_windows_service.cc: Reduced output log level in normal use.

        * main.cc: Added a new line on help output.

        * bin/PandoraAgent.exe: Updated to last commit.


git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@613 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-08-23 16:22:56 +00:00
esanchezm d023c1d376 2007-08-16 Esteban Sanchez <estebans@artica.es>
* pandora_windows_service.cc: Do not check debug flag if copying was
        not successful.

        * bin/README: Updated options.

        * bin/PandoraAgent.exe: Updated to last commit.


git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@598 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-08-16 09:26:35 +00:00
esanchezm 1983931fc0 2007-08-07 Esteban Sanchez <estebans@artica.es>
* pandora.cc: Updated agent version.

        * pandora.h, modules/pandora_module_exec.cc: Redefine WINVER, so
        CreateJobProject can be found without modifying windef.h.

        * pandora_agent_conf.cc: Rewritten a loop.

        * ftp/pandora_ftp_client.[cc,h]: Added to repository. Implemented FTP
        transfer protocol using libcurl. It adds a library dependency.

        * pandora_windows_service.cc: Added support for FTP transfers. Select
        between SSH (default) or FTP. Improved file structure to be cleaner.

        * pandora_windows_service.h: Added new private functions and removed
        unneccessary private attribute.

        * misc/pandora_file.[cc,h]: Added a function to get the filename of a
        path.

        * main.cc: Indentation fixed.

        * bin/libcurl.dll: Added to repository. New dependency.

        * bin/PandoraAgent.exe: Updated to last commit.


git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@594 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-08-07 14:28:14 +00:00
esanchezm 871e7e5935 2006-12-05 Esteban Sanchez <estebans@artica.es>
* pandora_windows_service.cc: Fixed a bug when the agent name is not
        configured and should be getted from the system.

        * bin/PandoraAgent.exe: Updated to last commit.


git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@309 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-12-05 12:37:36 +00:00
esanchezm a80ea03248 2006-12-01 Esteban Sanchez <estebans@artica.es>
* pandora_windows_service.[cc,h]: Added copyDataFile() method to
        class, it will copy the data file to the remote host. Now the data
        file is not copied when the debug flag is active. Changed some debug
        output to log output and changed one log message.

        * bin/pandora_agent.conf: Updated debug flag option to new format and
        commented.

        * bin/PandoraAgent.exe: Updated to new commit.


git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@293 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-12-01 16:29:27 +00:00
esanchezm ce89120378 006-12-01 Esteban Sanchez <estebans@artica.es>
* pandora_windows_service.cpp: Fixed a bug when copying the data file
        to server, which it didn't include the agent name if it was not
        defined in configuration file and was taken from Windows functions.

        * bin/PandoraAgent.exe: Updated to new commit.


git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@292 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-12-01 16:06:08 +00:00
esanchezm c4863bd516 2006-11-21 Esteban Sanchez <estebans@artica.es>
* pandora_windows_service.cc: Changed the debug option of the
        configuration to "debug" instead of "pandora_debug".

        * pandora.cc: Removed output to stdout when logging.

        * bin/pandora_agent.conf: Removed " from module_proc example. Fixes
        bug #1600008.

        * bin/PandoraAgent.exe: Updated to new commit.


git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@265 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-11-21 11:32:03 +00:00
esanchezm 647505d237 2006-10-06 Esteban Sanchez <estebans@artica.es>
* pandora.cc, pandora.h: Added getPandoraDebug() to get the 
debug
        flag value.

        * pandora_windows_service.cc: Do not remove the data file if 
flag
        debug is active.

        * bin/PandoraAgent.exe: Updated to new changes.

        * ChangeLog: Style correction.




git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@218 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-10-06 11:25:36 +00:00
esanchezm ed134b442c 2006-08-15 Esteban Sanchez <estebans@artica.es>
* autogen.sh, configure.in, Makefile.am, Doxyfile.in: Added to
        repository. They are used to generate documentation, not to compile.

        * main.cc: Added some comments. Style correction.

        * pandora.[cc,h]: Added documentation comments. Changed visibility of
        some attributes.

        * pandora_agent_conf.[cc,h]: Added to Pandora namespace. Added
        documentation comments.

        * pandora_windows_service.[cc,h], pandora_strutils.[cc,h],
        windows/pandora_windows_infp.[cc,h], ssh/pandora_ssh_test.[cc,h]:
	Added documentation comments.

        * ssh/pandora_ssh_client.[cc,h]:Added documentation comments. Removed
        old method to connect with user and password. Style correction.

        * misc/pandora_file.[cc,h]: Added documentation comments. Renamed some
        parameters.

        * modules/pandora_module.[cc,h]: Added documentation comments. Put a
        name to the enumerators. Added a new class to agroupate all exceptions
        produced by Pandora_Module child class objects. Changed visibility of
        some attributes. Added some new methods and renamed others.

        * modules/pandora_module_cpuusage.[cc,h],
        modules/pandora_module_exec.[cc,h],
        modules/pandora_module_freememory.[cc,h],
        modules/pandora_module_freedisk.[cc,h], modules/pandora_module_proc.[cc,h],
        modules/pandora_module_service.[cc,h]: Added documentation comments.
        Some changes to adapt the objects to the Pandora_Module changes.

        * modules/pandora_module_list.[cc,h]: Added documentation comments.
        Some changes to adapt the objects to the Pandora_Module changes. Added
        to Pandora_Modules namespace.

        * windows/pandora_windows_wmi.[cc,h]: Added documentation comments.
        Renamed Pandora_Wmi_Error to Pandora_Wmi_Exception.

        * windows_service.[cc,h]: Added documentation comments. Changed
        visibility of some attributes. Style correction.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@150 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-08-25 13:02:03 +00:00
esanchezm 45f3fca791 2006-07-05 Esteban Sanchez <esteban@steve-o.org>
* pandora.h, ssh/padora_ssh_client.h: Define renamed.

        * pandora_windows_service.cc: SSH user modified.

        * main.cc: Added Pandora_SSH_Test

        * ssh/pandora_ssh_test.h: Added define to avoid recursive inclusion.

        * ssh/pandora_ssh_test.cc: Unnecessary includes removed.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@93 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-07-05 15:02:28 +00:00
esanchezm 38b25f1170 2006-07-05 Esteban Sanchez <esteban@steve-o.org>
* pandora.[cc,h]: Program name and display name of the application.
        Added pandora_version variable and getPandoraAgentVersion()

        * pandora_windows_service.[cc,h]: Added checking of debug flag when
        reading the configuration file. Get the agent name from the machine if
        it was not defined in the configuration file. Date format on
        getXmlHeader() corrected. Style correction.

        * bin/README.txt: Fixed a error.

        * bin/PandoraAgent.tar.gz: Updated to the new commit.

        * windows/pandora_wmi.cc: The errors are now shown using pandoraLog().

        * modules/pandora_module.cc, modules/pandora_module_exec.cc,
        ChangeLog: Style correction.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@91 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-07-05 14:02:05 +00:00
esanchezm 92b748363a 2006-07-05 Esteban Sanchez <esteban@steve-o.org>
* windows/pandora_wmi.cc: Removed unnecessary debug. Check the service state on isRunningService ()

        * pandora_agent_conf.cc, modules/pandora_module_factory.cc: Removed unnecessary debug.

        * bin/PandoraAgent.tar.gz: Added to repository.

        * ssh/pandora_ssh_client.cc: Debug converted into log.

        * pandora_windows_service.cc:  Get the interval value (in minutes) and set it to the service.
        Check if the XML of the module is NULL before adding it to the file. Added log output on error.
        Delete temporal file before finishing the run.

        * pandora_windows_service.h: Macro modified.

        * modules/pandora_module.h, modules/pandora_module.cc: Added new exception, raised when the interval
        is not fulfilled. Added code to the run funtion of the Pandora_Module class, to check the execution
        interval.

        * modules/pandora_module_proc.cc, modules/pandora_module_exec.cc, modules/pandora_module_service.cc:
        Call to the run() base class function before running the specific code.

        * modules/pandora_module_list.cc: Removed use of namespace and use a explicit specification.

        * Changelog: Renamed to ChangeLog.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@85 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-07-05 08:46:51 +00:00
esanchezm 0546bc95ec 2006-07-04 Esteban Sanchez <esteban@steve-o.org>
* windows/pandora_wmi.*, windows/pandora_windows_info.*, windows/wmi/disphelper.*,
          misc/pandora_file.*, ssh/*, ssh/libssh2/*, modules/pandora_module_service.*,
        modules/pandora_module_proc.*: Added to repository

        * pandora_windows_service.cc, pandora_windows_service.h: getXMLHeader renamed to getXmlHeader
        and modified its behavior. Updated to the Pandora XML specification. Add SSH and XML generation
        functionallity.

        * modules/pandora_module_exec.cc: Added the execution to a job to prevent zombies process. Update
        the execution command.

        * modules/pandora_module_factory.cc: Added Pandora_Module_Proc and Pandora_Module_Service. Added
        the interval parameter.

        * modules/pandora_module_list.cc: Added support to Pandora_Module_Proc and Pandora_Module_Service.

        * modules/pandora_module.h: Added new types of modules. Added execution times and module description
        to the Pandora_Module class. Added support to Pandora_Module_Proc and Pandora_Module_Service. Added
        getXml, setInterval and setDescription functions.

        * pandora.h: Commentary fixed.

        * Changelog: Renamed to ChangeLog.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@83 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-07-04 14:07:08 +00:00
esanchezm d32dd965dd 2006-06-20 Esteban Sánchez
* win32: Initial import.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@48 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-06-20 17:05:19 +00:00