1<?php 2// Pandora FMS - http://pandorafms.com 3// ================================================== 4// Copyright (c) 2005-2012 Artica Soluciones Tecnologicas 5// Please see http://pandorafms.org for full contribution list 6 7// This program is free software; you can redistribute it and/or 8// modify it under the terms of the GNU Lesser General Public License 9// as published by the Free Software Foundation; version 2 10 11// This program is distributed in the hope that it will be useful, 12// but WITHOUT ANY WARRANTY; without even the implied warranty of 13// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 14// GNU General Public License for more details. 15 16/** 17 * @package Include 18 * @subpackage Constants 19 */ 20 21/* Enterprise hook constant */ 22define ('ENTERPRISE_NOT_HOOK', -1); 23 24 25/**/ 26define('DATE_FORMAT', 'Y/m/d'); 27define('DATE_FORMAT_JS', 'yy/mm/dd'); 28define('TIME_FORMAT', 'H:i:s'); 29define('TIME_FORMAT_JS', 'HH:mm:ss'); 30 31/* Events state constants */ 32define ('EVENT_NEW', 0); 33define ('EVENT_VALIDATE', 1); 34define ('EVENT_PROCESS', 2); 35 36 37 38/* Agents disabled status */ 39define ('AGENT_ENABLED', 0); 40define ('AGENT_DISABLED', 1); 41 42 43 44/* Error report codes */ 45define ('NOERR', 11111); 46define ('ERR_GENERIC', -10000); 47define ('ERR_EXIST', -20000); 48define ('ERR_INCOMPLETE', -30000); 49define ('ERR_DB', -40000); 50define ('ERR_DB_HOST', -40001); 51define ('ERR_DB_DB', -40002); 52define ('ERR_FILE', -50000); 53define ('ERR_NOCHANGES', -60000); 54define ('ERR_NODATA', -70000); 55define ('ERR_CONNECTION', -80000); 56define ('ERR_DISABLED', -90000); 57define ('ERR_WRONG', -100000); 58define ('ERR_WRONG_NAME', -100001); 59define ('ERR_WRONG_PARAMETERS', -100002); 60define ('ERR_ACL', -110000); 61define ('ERR_AUTH', -120000); 62define ('ERR_COULDNT_RESOLVE_HOST', -130000); 63 64/* Event status code */ 65define ('EVENT_STATUS_NEW', 0); 66define ('EVENT_STATUS_INPROCESS', 2); 67define ('EVENT_STATUS_VALIDATED', 1); 68 69/* Seconds in a time unit constants */ 70define('SECONDS_1MINUTE', 60); 71define('SECONDS_2MINUTES', 120); 72define('SECONDS_5MINUTES', 300); 73define('SECONDS_10MINUTES', 600); 74define('SECONDS_15MINUTES', 900); 75define('SECONDS_30MINUTES', 1800); 76define('SECONDS_1HOUR', 3600); 77define('SECONDS_2HOUR', 7200); 78define('SECONDS_3HOUR', 10800); 79define('SECONDS_5HOUR', 18000); 80define('SECONDS_6HOURS', 21600); 81define('SECONDS_12HOURS', 43200); 82define('SECONDS_1DAY', 86400); 83define('SECONDS_2DAY', 172800); 84define('SECONDS_4DAY', 345600); 85define('SECONDS_5DAY', 432000); 86define('SECONDS_1WEEK', 604800); 87define('SECONDS_10DAY', 864000); 88define('SECONDS_2WEEK', 1209600); 89define('SECONDS_15DAYS', 1296000); 90define('SECONDS_1MONTH', 2592000); 91define('SECONDS_2MONTHS', 5184000); 92define('SECONDS_3MONTHS', 7776000); 93define('SECONDS_6MONTHS', 15552000); 94define('SECONDS_1YEAR', 31104000); 95define('SECONDS_2YEARS', 62208000); 96define('SECONDS_3YEARS', 93312000); 97 98 99 100/* Separator constats */ 101define('SEPARATOR_COLUMN', ';'); 102define('SEPARATOR_ROW', chr(10)); //chr(10) = '\n' 103define('SEPARATOR_COLUMN_CSV', "#"); 104define('SEPARATOR_ROW_CSV', "@\n"); 105 106 107 108/* Backup paths */ 109switch ($config["dbtype"]) { 110 case "mysql": 111 case "postgresql": 112 define ('BACKUP_DIR', 'attachment/backups'); 113 define ('BACKUP_FULLPATH', $config['homedir'] . '/' . BACKUP_DIR); 114 break; 115 case "oracle": 116 define ('BACKUP_DIR', 'DATA_PUMP_DIR'); 117 define ('BACKUP_FULLPATH', 'DATA_PUMP_DIR'); 118 break; 119} 120 121 122 123/* Color constants */ 124define('COL_CRITICAL', '#FC4444'); 125define('COL_WARNING', '#FAD403'); 126define('COL_WARNING_DARK', '#FFB900'); 127define('COL_NORMAL', '#80BA27'); 128define('COL_NOTINIT', '#3BA0FF'); 129define('COL_UNKNOWN', '#B2B2B2'); 130define('COL_ALERTFIRED', '#FFA631'); 131define('COL_MINOR', '#F099A2'); 132define('COL_MAJOR', '#C97A4A'); 133define('COL_INFORMATIONAL', '#E4E4E4'); 134define('COL_MAINTENANCE', '#3BA0FF'); 135 136define('COL_GRAPH1', '#C397F2'); 137define('COL_GRAPH2', '#FFE66C'); 138define('COL_GRAPH3', '#92CCA3'); 139define('COL_GRAPH4', '#EA6D5B'); 140define('COL_GRAPH5', '#6BD8DD'); 141define('COL_GRAPH6', '#F49B31'); 142define('COL_GRAPH7', '#999999'); 143define('COL_GRAPH8', '#F2B8C1'); 144define('COL_GRAPH9', '#C4E8C1'); 145define('COL_GRAPH10', '#C1DBE5'); 146define('COL_GRAPH11', '#C9C1e0'); 147define('COL_GRAPH12', '#F45B95'); 148define('COL_GRAPH13', '#E83128'); 149 150 151/* The styles */ 152/* Size of text in characters for truncate */ 153define('GENERIC_SIZE_TEXT', 25); 154 155 156 157/* Agent module status */ 158define('AGENT_MODULE_STATUS_ALL', -1); 159define('AGENT_MODULE_STATUS_CRITICAL_BAD', 1); 160define('AGENT_MODULE_STATUS_CRITICAL_ALERT', 100); 161define('AGENT_MODULE_STATUS_NO_DATA', 4); 162define('AGENT_MODULE_STATUS_NORMAL', 0); 163define('AGENT_MODULE_STATUS_NORMAL_ALERT', 300); 164define('AGENT_MODULE_STATUS_NOT_NORMAL', 6); 165define('AGENT_MODULE_STATUS_WARNING', 2); 166define('AGENT_MODULE_STATUS_WARNING_ALERT', 200); 167define('AGENT_MODULE_STATUS_UNKNOWN', 3); 168define('AGENT_MODULE_STATUS_NOT_INIT', 5); 169 170/* Agent status */ 171define('AGENT_STATUS_ALL', -1); 172define('AGENT_STATUS_CRITICAL', 1); 173define('AGENT_STATUS_NORMAL', 0); 174define('AGENT_STATUS_NOT_INIT', 5); 175define('AGENT_STATUS_NOT_NORMAL', 6); 176define('AGENT_STATUS_UNKNOWN', 3); 177define('AGENT_STATUS_ALERT_FIRED', 4); 178define('AGENT_STATUS_WARNING', 2); 179 180 181/* Visual maps contants */ 182//The items kind 183define('STATIC_GRAPH', 0); 184define('PERCENTILE_BAR', 3); 185define('MODULE_GRAPH', 1); 186define('SIMPLE_VALUE', 2); 187define('LABEL', 4); 188define('ICON', 5); 189define('SIMPLE_VALUE_MAX', 6); 190define('SIMPLE_VALUE_MIN', 7); 191define('SIMPLE_VALUE_AVG', 8); 192define('PERCENTILE_BUBBLE', 9); 193define('SERVICE', 10); //Enterprise Item. 194define('GROUP_ITEM', 11); 195define('BOX_ITEM', 12); 196define('LINE_ITEM', 13); 197//Some styles 198define('MIN_WIDTH', 300); 199define('MIN_HEIGHT', 120); 200define('MIN_WIDTH_CAPTION', 420); 201//The process for simple value 202define('PROCESS_VALUE_NONE', 0); 203define('PROCESS_VALUE_MIN', 1); 204define('PROCESS_VALUE_MAX', 2); 205define('PROCESS_VALUE_AVG', 3); 206//Status 207define('VISUAL_MAP_STATUS_CRITICAL_BAD', 1); 208define('VISUAL_MAP_STATUS_CRITICAL_ALERT', 4); 209define('VISUAL_MAP_STATUS_NORMAL', 0); 210define('VISUAL_MAP_STATUS_WARNING', 2); 211define('VISUAL_MAP_STATUS_UNKNOWN', 3); 212define('VISUAL_MAP_STATUS_WARNING_ALERT', 10); 213//Wizard 214define('VISUAL_MAP_WIZARD_PARENTS_NONE', 0); 215define('VISUAL_MAP_WIZARD_PARENTS_ITEM_MAP', 1); 216define('VISUAL_MAP_WIZARD_PARENTS_AGENT_RELANTIONSHIP', 2); 217 218 219 220/* Service constants */ 221//Status 222define('SERVICE_STATUS_UNKNOWN', -1); 223define('SERVICE_STATUS_NORMAL', 0); 224define('SERVICE_STATUS_CRITICAL', 1); 225define('SERVICE_STATUS_WARNING', 2); 226define('SERVICE_STATUS_ALERT', 4); 227//Default weights 228define('SERVICE_WEIGHT_CRITICAL', 1); 229define('SERVICE_WEIGHT_WARNING', 0.5); 230define('SERVICE_ELEMENT_WEIGHT_CRITICAL', 1); 231define('SERVICE_ELEMENT_WEIGHT_WARNING', 0.5); 232define('SERVICE_ELEMENT_WEIGHT_OK', 0); 233define('SERVICE_ELEMENT_WEIGHT_UNKNOWN', 0); 234//Modes 235define('SERVICE_MODE_MANUAL', 0); 236define('SERVICE_MODE_AUTO', 1); 237define('SERVICE_MODE_SIMPLE', 2); 238 239 240/* Status images */ 241//For modules 242define ('STATUS_MODULE_OK', 'module_ok.png'); 243define ('STATUS_MODULE_CRITICAL', 'module_critical.png'); 244define ('STATUS_MODULE_WARNING', 'module_warning.png'); 245define ('STATUS_MODULE_NO_DATA', 'module_no_data.png'); 246define ('STATUS_MODULE_UNKNOWN', 'module_unknown.png'); 247//For agents 248define ('STATUS_AGENT_CRITICAL', 'agent_critical.png'); 249define ('STATUS_AGENT_WARNING', 'agent_warning.png'); 250define ('STATUS_AGENT_DOWN', 'agent_down.png'); 251define ('STATUS_AGENT_UNKNOWN', 'agent_unknown.png'); 252define ('STATUS_AGENT_OK', 'agent_ok.png'); 253define ('STATUS_AGENT_NO_DATA', 'agent_no_data.png'); 254define ('STATUS_AGENT_NO_MONITORS', 'agent_no_monitors.png'); 255define ('STATUS_AGENT_NOT_INIT', 'agent_notinit.png'); 256//For alerts 257define ('STATUS_ALERT_FIRED', 'alert_fired.png'); 258define ('STATUS_ALERT_NOT_FIRED', 'alert_not_fired.png'); 259define ('STATUS_ALERT_DISABLED', 'alert_disabled.png'); 260//For servers 261define ('STATUS_SERVER_OK', 'server_ok.png'); 262define ('STATUS_SERVER_DOWN', 'server_down.png'); 263 264 265/* Status images (ball) */ 266//For modules 267define ('STATUS_MODULE_OK_BALL', 'module_ok_ball.png'); 268define ('STATUS_MODULE_CRITICAL_BALL', 'module_critical_ball.png'); 269define ('STATUS_MODULE_WARNING_BALL', 'module_warning_ball.png'); 270define ('STATUS_MODULE_NO_DATA_BALL', 'module_no_data_ball.png'); 271define ('STATUS_MODULE_UNKNOWN_BALL', 'module_unknown_ball.png'); 272//For agents 273define ('STATUS_AGENT_CRITICAL_BALL', 'agent_critical_ball.png'); 274define ('STATUS_AGENT_WARNING_BALL', 'agent_warning_ball.png'); 275define ('STATUS_AGENT_DOWN_BALL', 'agent_down_ball.png'); 276define ('STATUS_AGENT_UNKNOWN_BALL', 'agent_unknown_ball.png'); 277define ('STATUS_AGENT_OK_BALL', 'agent_ok_ball.png'); 278define ('STATUS_AGENT_NO_DATA_BALL', 'agent_no_data_ball.png'); 279define ('STATUS_AGENT_NO_MONITORS_BALL', 'agent_no_monitors_ball.png'); 280define ('STATUS_AGENT_NOT_INIT_BALL', 'agent_notinit_ball.png'); 281//For alerts 282define ('STATUS_ALERT_FIRED_BALL', 'alert_fired_ball.png'); 283define ('STATUS_ALERT_NOT_FIRED_BALL', 'alert_not_fired_ball.png'); 284define ('STATUS_ALERT_DISABLED_BALL', 'alert_disabled_ball.png'); 285//For servers 286define ('STATUS_SERVER_OK_BALL', 'server_ok_ball.png'); 287define ('STATUS_SERVER_DOWN_BALL', 'server_down_ball.png'); 288 289 290 291/* Events criticity */ 292define ('EVENT_CRIT_MAINTENANCE', 0); 293define ('EVENT_CRIT_INFORMATIONAL', 1); 294define ('EVENT_CRIT_NORMAL', 2); 295define ('EVENT_CRIT_MINOR', 5); 296define ('EVENT_CRIT_WARNING', 3); 297define ('EVENT_CRIT_MAJOR', 6); 298define ('EVENT_CRIT_CRITICAL', 4); 299define ('EVENT_CRIT_WARNING_OR_CRITICAL', 34); 300define ('EVENT_CRIT_NOT_NORMAL', 20); 301define ('EVENT_CRIT_OR_NORMAL', 21); 302 303/* Id Module (more use in component)*/ 304define ('MODULE_DATA', 1); 305define ('MODULE_NETWORK', 2); 306define ('MODULE_SNMP', 2); 307define ('MODULE_PLUGIN', 4); 308define ('MODULE_PREDICTION', 5); 309define ('MODULE_WMI', 6); 310define ('MODULE_WEB', 7); 311 312/* Type of Modules of Prediction */ 313define ('MODULE_PREDICTION_SERVICE', 2); 314define ('MODULE_PREDICTION_SYNTHETIC', 3); 315define ('MODULE_PREDICTION_NETFLOW', 4); 316 317/* SNMP CONSTANTS */ 318define('SNMP_DIR_MIBS', "attachment/mibs"); 319 320define('SNMP_TRAP_TYPE_NONE', -1); 321define('SNMP_TRAP_TYPE_COLD_START', 0); 322define('SNMP_TRAP_TYPE_WARM_START', 1); 323define('SNMP_TRAP_TYPE_LINK_DOWN', 2); 324define('SNMP_TRAP_TYPE_LINK_UP', 3); 325define('SNMP_TRAP_TYPE_AUTHENTICATION_FAILURE', 4); 326define('SNMP_TRAP_TYPE_OTHER', 5); 327 328/* PASSWORD POLICIES */ 329define('PASSSWORD_POLICIES_OK', 0); 330define('PASSSWORD_POLICIES_FIRST_CHANGE', 1); 331define('PASSSWORD_POLICIES_EXPIRED', 2); 332 333/* SERVER TYPES */ 334define('SERVER_TYPE_DATA', 0); 335define('SERVER_TYPE_NETWORK', 1); 336define('SERVER_TYPE_SNMP', 2); 337define('SERVER_TYPE_RECON', 3); 338define('SERVER_TYPE_PLUGIN', 4); 339define('SERVER_TYPE_PREDICTION', 5); 340define('SERVER_TYPE_WMI', 6); 341define('SERVER_TYPE_EXPORT', 7); 342define('SERVER_TYPE_INVENTORY', 8); 343define('SERVER_TYPE_WEB', 9); 344define('SERVER_TYPE_EVENT', 10); 345define('SERVER_TYPE_ENTERPRISE_ICMP', 11); 346define('SERVER_TYPE_ENTERPRISE_SNMP', 12); 347define('SERVER_TYPE_ENTERPRISE_SATELLITE', 13); 348 349/* REPORTS */ 350define('REPORT_TOP_N_MAX', 1); 351define('REPORT_TOP_N_MIN', 2); 352define('REPORT_TOP_N_AVG', 0); 353 354define('REPORT_TOP_N_ONLY_GRAPHS', 2); 355define('REPORT_TOP_N_SHOW_TABLE_GRAPS', 1); 356define('REPORT_TOP_N_ONLY_TABLE', 0); 357 358define('REPORT_EXCEPTION_CONDITION_EVERYTHING', 0); 359define('REPORT_EXCEPTION_CONDITION_GE', 1); 360define('REPORT_EXCEPTION_CONDITION_LE', 5); 361define('REPORT_EXCEPTION_CONDITION_L', 2); 362define('REPORT_EXCEPTION_CONDITION_G', 6); 363define('REPORT_EXCEPTION_CONDITION_E', 7); 364define('REPORT_EXCEPTION_CONDITION_NE', 8); 365define('REPORT_EXCEPTION_CONDITION_OK', 3); 366define('REPORT_EXCEPTION_CONDITION_NOT_OK', 4); 367 368define('REPORT_ITEM_ORDER_BY_AGENT_NAME', 3); 369define('REPORT_ITEM_ORDER_BY_ASCENDING', 2); 370define('REPORT_ITEM_ORDER_BY_DESCENDING', 1); 371define('REPORT_ITEM_ORDER_BY_UNSORT', 0); 372 373define('REPORT_OLD_TYPE_SIMPLE_GRAPH', 1); 374define('REPORT_OLD_TYPE_CUSTOM_GRAPH', 2); 375define('REPORT_OLD_TYPE_SLA', 3); 376define('REPORT_OLD_TYPE_MONITOR_REPORT', 6); 377define('REPORT_OLD_TYPE_AVG_VALUE', 7); 378define('REPORT_OLD_TYPE_MAX_VALUE', 8); 379define('REPORT_OLD_TYPE_MIN_VALUE', 9); 380define('REPORT_OLD_TYPE_SUMATORY', 10); 381 382define('REPORT_GENERAL_NOT_GROUP_BY_AGENT', 0); 383define('REPORT_GENERAL_GROUP_BY_AGENT', 1); 384 385define('REPORTING_CUSTOM_GRAPH_LEGEND_EACH_MODULE_VERTICAL_SIZE', 15); 386 387/* POLICIES */ 388 389define("POLICY_UPDATED", 0); 390define("POLICY_PENDING_DATABASE", 1); 391define("POLICY_PENDING_ALL", 2); 392 393define("STATUS_IN_QUEUE_OUT", 0); 394define("STATUS_IN_QUEUE_IN", 1); 395define("STATUS_IN_QUEUE_APPLYING", 2); 396 397define("MODULE_UNLINKED", 0); 398define("MODULE_LINKED", 1); 399define("MODULE_PENDING_UNLINK", 10); 400define("MODULE_PENDING_LINK", 11); 401 402/* EVENTS */ 403define("EVENTS_GOING_UNKNOWN" , 'going_unknown'); 404define("EVENTS_UNKNOWN", 'unknown'); 405define("EVENTS_ALERT_FIRED", 'alert_fired'); 406define("EVENTS_ALERT_RECOVERED", 'alert_recovered'); 407define("EVENTS_ALERT_CEASED", 'alert_ceased'); 408define("EVENTS_ALERT_MANUAL_VALIDATION", 'alert_manual_validation'); 409define("EVENTS_RECON_HOST_DETECTED", 'recon_host_detected'); 410define("EVENTS_SYSTEM", 'system'); 411define("EVENTS_ERROR", 'error'); 412define("EVENTS_NEW_AGENT", 'new_agent'); 413define("EVENTS_GOING_UP_WARNING", 'going_up_warning'); 414define("EVENTS_GOING_UP_CRITICAL", 'going_up_critical'); 415define("EVENTS_GOING_DOWN_WARNING", 'going_down_warning'); 416define("EVENTS_GOING_DOWN_NORMAL", 'going_down_normal'); 417define("EVENTS_GOING_DOWN_CRITICAL", 'going_down_critical'); 418define("EVENTS_GOING_UP_NORMAL", 'going_up_normal'); 419define("EVENTS_CONFIGURATION_CHANGE", 'configuration_change'); 420 421/* CUSTOM GRAPHS */ 422define("CUSTOM_GRAPH_AREA", 0); 423define("CUSTOM_GRAPH_STACKED_AREA", 1); 424define("CUSTOM_GRAPH_LINE", 2); 425define("CUSTOM_GRAPH_STACKED_LINE", 3); 426define("CUSTOM_GRAPH_BULLET_CHART", 4); 427define("CUSTOM_GRAPH_GAUGE", 5); 428define("CUSTOM_GRAPH_HBARS", 6); 429define("CUSTOM_GRAPH_VBARS", 7); 430define("CUSTOM_GRAPH_PIE", 8); 431 432/* COLLECTIONS */ 433define("COLLECTION_PENDING_APPLY", 0); 434define("COLLECTION_CORRECT", 1); 435define("COLLECTION_ERROR_LOST_DIRECTORY", 2); 436define("COLLECTION_UNSAVED", 3); 437 438/* PAGINATION */ 439define("PAGINATION_BLOCKS_LIMIT", 15); 440 441/* CHARTS */ 442define("CHART_DEFAULT_WIDTH", 150); 443define("CHART_DEFAULT_HEIGHT", 110); 444 445define("CHART_DEFAULT_ALPHA", 50); 446 447/* Statwin */ 448define("STATWIN_DEFAULT_CHART_WIDTH", 555); 449define("STATWIN_DEFAULT_CHART_HEIGHT", 245); 450 451/* Dashboard */ 452define("DASHBOARD_DEFAULT_COUNT_CELLS", 9); 453 454define("OPTION_TEXT", 1); 455define("OPTION_SINGLE_SELECT", 2); 456define("OPTION_MULTIPLE_SELECT", 3); 457define("OPTION_BOOLEAN", 4); 458define("OPTION_TEXTAREA", 5); 459define("OPTION_TREE_GROUP_SELECT", 6); 460define("OPTION_SINGLE_SELECT_TIME", 7); 461define("OPTION_CUSTOM_INPUT", 8); 462define("OPTION_AGENT_AUTOCOMPLETE", 9); 463?> 464