Configuration Guide
Configuration:
Whole configuration takes place in text file located in InstanceMonitor\config directory.
- Open [InstanceMonitor]\config\config.php file and edit it if needed 1.1. In $config array You can set base parameters: 1.1.1. language - Default language (only English ‘en’ and Polish ‘pl’ are supported) 1.1.2. apache_log_file - Path to apache php error file 1.2. In $jobs array You can define jobs common for all instances. 1.3. In $output array You can define avaliable outputs for jobs.
- For every instance which you want to add to Instance Monitor create directory in config directory, for example: [InstanceMonitor]\config\test_instance.
- In this dictionary You should create config.php file where you define data specyfic for this instance like this: 2.1. In $config array You can set base instance parameters: 2.1.1. sugar_login – username for administration user for this instance 2.1.2. sugar_password – password for that user 2.1.3 sugar_url – url for instance 2.1.4. sugar_dir – directory where instance is located 3.2. In $jobs array You can define/override jobs sepcyfic for this instances. 3.3. In $output array You can define/override avaliable outputs for jobs.
Job definiton
Job definiton consists of 3 parts:
- frequency – parameter describes how often this job should be run – use unix crontab notation
- className – class name for tabel ‘Avaliable jobs’ - specify which job we use
- outputs – array where w can specify which oupty form define we want to use for messages generated by this job
Example:
[
'frequency' => '* * * * *',
'className' => 'HeartbeatChecker',
'outputs' => [
'LogFile',
'Rocket',
'Greylog'
],
]
Avaliable jobs
Class Name | What is checked? |
---|---|
CronJobFailedChecker | Check if all schedulers in CRM system are finished properly. |
ElasticChecker | Check if there is no problem with connection to ElasticSearch server. |
EmptyNameChecker | Check if there is no records with empty name/last_name. |
HeartbeatChecker | Check if InstanceMonitor works for instance. If there was no other messages for instance generate simple message to make user sure that everythig is ok. |
InvalidDateChecker | Check if in records is no incorrect date - ‘1970-01-01’ |
MailerChecker | Check if there is no problems with connection to SMTP Server. |
ModuleBuilderChecker | Check if someone changed something in ModuleBuilder. |
ProcessFailureChecker | Check if all processes from Advanced Workflows are finised correctly. |
QueryLimitChecker | Check if there are pages required too many database queries. |
RLIWithZeroBestCaseChecker | Check if there are any Revenue Line Items with value equals 0. |
SlowQueryChecker | Check if there are slow SQL queries. |
SQLNotificationChecker | Check if all sql queries return correct data. |
Output definition:
Output definition consists of 2 parts: - class – class form table ‘Avaliable outputs’ - specify which type of output we want to use - param – parameters specyfic for output class
Examples:
'LogFile' => [
'class' => 'FileOutput',
'param' => [
'file_name' => "file.log"
]
],
'Rocket' => [
'class' => 'RocketOutput',
'param' => [
'rocket_url' => "[Rocketchat_incomming_message_hook_url]"
]
],
'Greylog' => [
'class' => 'GreylogOutput',
'param' => [
'url' => "[Graylog_server_url]",
'port' => "[Graylog_server_stream_port]",
]
],
Avaliable outputs
Class | Description | Params |
---|---|---|
FileOutput | Send messages to simple text file. | file_name – path to file |
RocketOutput | Send messages to specyfic channel on RocketChat communicator | rocket_url – url for rocket chat incomming logic hook |
GreylogOutput | Send messages to Graylog Server | url – url for Graylog server; port – port on Graylog Server where stream is opened on |
Saving Comment...