Commit Graph

27 Commits

Author SHA1 Message Date
slerena 373a98a350 2007-07-20 Sancho Lerena <slerena@artica.es>
* pandora_network.pl: Fixed a typo in pandora_ping_latency function.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@572 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-07-20 10:53:19 +00:00
slerena e1afa9a213 2007-07-19 Sancho Lerena <slerena@artica.es>
* pandora_network.pl: Added concurrency locking for ICMP and
        removed previos method (repeating tests). This sould work fine and
        faster. ICMP Latency added as independent function. This sould go
        on a new library for 1.4 or 2.0 version. Removed some debug
        commented code.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@569 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-07-19 19:07:30 +00:00
slerena 3ca171e000 2007-07-18 Sancho Lerena <slerena@artica.es>
* pandora_network.pl: BugFix: SNMP calls that was causing segfauls was
        because NetSNMP (SNMP) library is not thread safe !. Simple locking
        mechanism was enough to run code safely !. Main SQL sentence fixed,
        removed some debug code.

        * pandora_server.conf: added sample of network_thread token



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@566 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-07-18 17:53:17 +00:00
slerena 78dac4b5f2 2007-07-17 Sancho Lerena <slerena@artica.es>
* pandora_server.pl: Small indenting changes.

        * PandoraFMS/DB.pm: Added generic access to database using
        give_db_value() function.

        * pandora_network.pl: Porting code from 2.0 trunk, code from 1.3 was
        too slow. Solved many issues of stability. Changed entire balancing
        and task assigment algorithm.

        * PandoraFMS/Config.pm: Added network_thread config option to
        fine-tune network server.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@565 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-07-17 18:34:38 +00:00
slerena 8bd7e3d589 2007-06-07 Sancho Lerena <slerena@artica.es>
* bin/pandora_network.pl: Net::Ping::External does not solve our
        odd problems. Fallback again to Net::Ping interface, not using a
        double check to be sure that data is good. I hope this works :(



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@493 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-06-07 17:24:02 +00:00
slerena 2452a7e164 2007-06-07 Sancho Lerena <slerena@artica.es>
Important update. Now all PM files (library) goes on PandoraFMS
        subdirectory from /bin. This should be copied/moved to system
        default Perl libraries (like /usr/lib/perl). All .PM files changes
        it's name.

        We also replace Net::Ping for Alive checks because recently
        problems discovered in packet lenght payload and problems with
        threads. We fallback to Net::Ping::External, now rewrapped to
        PandoraFMS::PingExternal and distributed with PandoraFMS for easy
        deployment.

        bin/*.pm: Renamed to equivalent files in ./bin/PandoraFMS dir

        * bin/pandora_network.pl: Now uses ping() from PingExternal to
        make alive checks. Latency checks is the only function that
        actually needs root now. External Ping could be executed from any
        user (it uses PING from system).

        * bin/PandoraFMS: Now contains all .PM files for PandoraFMS.




git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@490 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-06-07 10:30:03 +00:00
slerena 7c8d7757ff 2007-06-05 Sancho Lerena <slerena@gmail.com>
* pandora_network.pm: Small bug that causes some hosts to do not reply
        at ICMP request with a small payload (1 byte). Now uses by default
        32 bytes per reply. Also modified icmp_data for latency checks because
        was not using global timeout and has the same problems with small
        payloads.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@487 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-06-05 18:37:13 +00:00
slerena 026ffbece4 2007-06-05 Sancho Lerena <slerena@gmail.com>
* pandora_network.pm: Small bug that causes some hosts to do not reply
        at ICMP request with a small payload (1 byte). Now uses by default
        32 bytes per reply.




git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@486 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-06-05 18:33:47 +00:00
slerena 5a7cc6bb9f 2007-05-24 Sancho Lerena <slerena@artica.es>
* conf/pandora_server.conf: Added support for dbname option.

        * pandora_snmpconsole: Version and bash header updated.

        * bin/pandora_config.pm: Added support for dbname option. Added
        some default options for DB.

        * bin/pandora_db.pm: Fixed stupid bug in alert execution.  Added
        support for dbname option and other minor fixes.

        * bin/pandora_server.pl,
        bin/pandora_network.pl,
        bin/pandora_snmpconsole.pl,
        bin/pandora_recon.pl:  Added support for dbname option.

        * pandora_server: Version update



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@468 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-05-24 21:14:06 +00:00
slerena a822da5d02 2007-05-21 Sancho Lerena <slerena@artica.es>
* pandora_network: Version banner update.

        * pandora_db.pm: Fixed problem in function
        module_generic_data_inc() that doesn't create record on new
        data_inc modules, only updates if already exists. Fixed and
        tested.

        * pandora_network.pm: pandora_query_snmp() function return 0 if
        cannot stablish connection. Also, snmp_data_proc value of 2 (down)
        is turned to 0 for Pandora FMS. Also, now when cannot connect,
        ONLY UPDATE last_try field, not timestamp field in tagente_estado
        table. I don't know why was in that way until this moment ¿?




git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@460 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-05-21 09:12:21 +00:00
slerena 264b7aa66b 2007-05-07 Sancho Lerena <slerena@artica.es>
* bin/pandora_db.pm: Fixed some problems with quotes and other aditional
	checks.

	* bin/pandora_network.pl: Fixed some problems with quotes and other
	aditional checks.  Detected a serious BUG in snmplib for Ubuntu Freeze
	(already submitted as detected BUG with veryhigh priority). This makes
	pandora network server unusable on feisty until fixed :(. Bug item is in
	https://bugs.launchpad.net/ubuntu/+source/net-snmp/+bug/65047



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@452 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-05-07 11:45:01 +00:00
slerena 9ebfe51efd 2007-05-03 Sancho Lerena <slerena@artica.es>
* bin/pandora_network.pl: Fix problem with ICMP timeouts.

        * util/pandora_dbstress.pl: Update for new needsupdate fix in some
        DB code. Needs to be improved for specific module/agent selection.




git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@449 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-05-03 02:15:42 +00:00
slerena f9d58e6b61 2007-04-21 Sancho Lerena <slerena@gmail.com>
* pandora_tools.pm: Fixed sqlWrap() function.

	* pandora_db.pm: Many changes and fixes: data_inc process function
	almost rewritten to fix a bug coming from 1.x? who causes to
	insert as data the total value for first data arriving... so bad
	:(. This is now fixed. crea_agente_modulo() now return id of
	agent_module created so we skip another timeconsuming query
	:). Added give_group_disabled() for next feature about Group
	Disabled doesnt fire alerts nor events. Fixed crea_agente_modulo()
	with many not defined checks.

	* pandora_network.pm: Fixed terrible bug in reference parameters
	that cause pandora_query_tcp() dont work properly.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@434 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-04-21 16:02:16 +00:00
slerena 2ae310c69d 2007-04-19 Sancho Lerena <slerena@artica.es>
* pandora_tools.pm: Now expor sqlWrap() function to parse " and '
        chars in some SQL sentences. Use with careful.

        * pandora_network.pm: Fixed little bug with undeclared variable
        warning.

        * pandora_db.pm: Implemented NEW text alerts with regexp. Internal
        audit now uses macros for alerts. Fixed a bug in
        crea_agente_modulo() when uses ' chars in name or module
        description (using sqlWrap to clean text). General code cleanup.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@432 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-04-19 18:41:55 +00:00
slerena 5774503503 2007-03-29 Sancho Lerena <slerena@artica.es>
* pandora_config.pm: Now stores $pa_config->{'server_id'}
	available for any function in Pandora FMS Server.

	* pandora_db.pm: Several verbosity level adjustements in logger
	functions in all code. Some debug code purged. Alert code now
	should store group correctly in events. Renamed
	"processed_by_server" field from tagente_estado by "running_by",
	updated some code. pandora_updateserver() now stores also server
	version.

	* pandora_network.pm: pandora_serverkeepaliver now run more
	exactly and does not apply any delay. Module selection now uses
	utimestamp AND the new running_by to know that other instance of
	server is currently running this module. TCP code has moved to
	function pandora_query_tcp() -code cleanup-. UDP code deleted
	(doesn't work, and never used!). Fixed important bug in ICMP Proc
	that causes constant FLIPFLOP in monitors since last commit. Fixed
	also a problem from that version updating status timestamp. Lastry
	field only be used now for checking 24hr without updating tdata
	table.

	* pandora_server.conf: Updated some text and formatting, more
	clear now.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@406 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-03-29 10:42:34 +00:00
slerena ea13822a9e 2007-03-23 Sancho Lerena <slerena@artica.es>
* pandora_tools.pm: Added sqlWrap function to manage quotes.

	* pandora_network.pm: MAJOR changes in internal architecture: Now
	uses 10 threads for manage network tasks and one only to keep
	server alive. Now catch TERM signal and log it. New function to
	check UDP services. This should be enought for improve network
	server performance until 2.0 version :-)

	* pandora_db.pm: pandora_calcula_alerta now calls execute_alert
	and clenanup alert code. Fixed bug with Internal audit
	alert. Addded fix from Dassing to pandora_writestate and added
	more fixes for 24hr data problem that include fix
	odule_generic_data.. functions.  pandora_audit () now uses
	utimestamp also.



git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@402 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-03-23 16:04:53 +00:00
slerena 8b1eb59073 2007-03-19 Sancho Lerena <slerena@artica.es>
* pandora_recon: Startup script for recon server.

	* pandora_recon.pl: Major code cleanup. First "complete" version,
	this sould be enought for a while. Works for me.

	* pandora_db.pm: Added generic functions to add incident . Added
	function give_network_component_profile_name(). Now updates
	correctly recon server status in pandora_updateserver function
	call.
	
	* pandora_network.pm: Replaced Net::Ping::External usage with
	Net::Ping library. This should fix many problems with some
	distros. Added pandora_ping_icmp() function to check ICMP boolean.
	
	


git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@398 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-03-19 20:04:37 +00:00
slerena 63cc47342c 2007-03-12 Sancho Lerena <slerena@artica.es>
* util/pandora_dbstress.pl: Upgraded. Now admits one agent or
          all agent.

        * bin/pandora_recon.pl: New network recon server, to autoexplore
        new machines and add to monitorization automatically. Not
        finished, first version, first commit to SVN :-)

        * bin/pandora_db.pm: Now pandora_writestate() writes new fields
        current_interval, processed_by_server into tagente_estado
        table. This increase seeks for Unknown modules, and to know what
        server manage the module (data or network).

        * bin/pandora_server.pl: Small changes in banners.

        * bin/pandora_network.pl: Small changes in banner. Small
        optimization, now server_id is only checked once.

        * bin/pandora_config.pm: Small changes in banner. Added support to
        new reconserver, added config hash "servermode" to maintain a
        single var with servertype. Now renders in console real server
        name at startup and a "all correct" message after initializing.




git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@393 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-03-12 17:41:58 +00:00
slerena 55f88630da 2007-02-16 Sancho Lerena <slerena@artica.es>
* pandora_db.pm: Now updates and uses utimestamp fields in
	tagent_data, tagent_data_string and tagent_status.
	


git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@375 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2007-02-16 18:33:52 +00:00
raulmateos ff682a8730 2006-09-29 Raul Mateos <raulofpandora@gmail.com>
* pandora_server/bin/*.pl and *.pm: Updated some comments from
	Spanish to English. Update build date.

git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@197 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-09-29 12:29:36 +00:00
slerena 5ad3d10529 2006-09-13 Sancho Lerena <slerena@artica.es>
* pandora_network.pl: Fixed problems with OID index. Perl needs to
	referente a .0 index, like SNMPv2-MIB::sysDescr.0 as
	SNMPv2-MIB::sysDescr. Also, other numerical indexes are referenced
	different from system SNMP or PHP. IF-MIB::ifDescr.3 is
	IF-MIB::ifDescr.2 for PERL's SNMP.
	


git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@167 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-09-13 11:32:46 +00:00
slerena 4e6270f73b * pandora_network.pl: Now launch 3 threads, one for each of this network modules: ICMP, TCP/UDP and SNMP. This will improve the max. capacity of each network server. This code was copied from Pandora Data Server code.
* pandora_db.pm: Corrected a small problem in server keepalive function. Now works fine, and create an event when server going up or server going down (also a Log line).
* pandora_server.pl: Fixed a damm bug when server was running in daemon: keepalive check function doesnt exec because thread starts before daemonize call. Fixed and workaround copied to Network Server code.

git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@74 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-07-02 21:31:08 +00:00
slerena 498a45ad79 * Updated functions pandora_serverkeepaliver and pandora_updateserver to work on instances of server instead of single name. Now instances for servers will be called "xxx_Net" for Network, "xxx_Data" for Data Server, and "xxx_SNMP" for SNMP Server. This way, a individual keepalive will be used for each instance.
* Added the keywork "server_keepalive" for server configuration: Time to check another server is down. Would be nice if all servers in a setup has the same value (reflect this in doc. please!).
* Fixed a stupid issue in numeric data (commas and dots for use real numeric values).... I wish this fix an old bug identified in SourceForge.
* Something more I cannot remeber now, it's 3:44am of Saturdar 1th July... Beta2 need to be finished NOW!.


git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@69 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-07-01 01:54:36 +00:00
raulmateos 52765cfa4e Fixed small bug in the new SNMP function (purge all NULL results, etc)
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@65 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-06-29 22:04:17 +00:00
slerena fdfee7fe40 * Licence banner change (for more accurate information about GPL and copyrights in all files of this commit.
* pandora_db.pm: Fixed a debug message written in console when inserting a new event.
* pandora_snmpconsole.pl: No longer use the NET:SNMP module, we use now SNMP module.
* Some of calls to log with low debuglevel are increased to write a bit less garbage into log.
* Added pandora_SNMP_test.pl to test SNMP functionality and perl module operatibility

git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@63 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-06-29 19:37:46 +00:00
slerena b9d1f3d466 * Changed to SNMP module insted of NET:SNMP, a better results and could get OID with names, not only numeric OID. Tested and works fine.
* Added a small tool to test SNMP functionality (a perl snmpget command using either NET:SNMP or SNMP module).


git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@53 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-06-28 17:08:22 +00:00
slerena 0cd002810a Initial Pandora load from our internal SVN
git-svn-id: https://svn.code.sf.net/p/pandora/code/trunk@1 c3f86ba8-e40f-0410-aaad-9ba5e7f4b01f
2006-03-27 03:37:27 +00:00