Configuration

imcontroller.properties

  • module.redis.host=<ip/host address of central redis>

  • module.redis.port=<port address of central redis>

  • module.redis.password=<password of central redis>

  • module.redis.timeout=<timeout of redis query>

  • module.redis.pool.maxtotal=<Number of redis connections to be maintained in the pool>

  • module.redis.pool.close.after.ms=<Milliseconds to wait before destroying the Redis connection pool>

  • module.job.hash=H:IMALERT:JOB_HASH //Do not change

  • module.job.queue=<name of the redis stream the messages are supposed to be sent to>

  • module.job.queue.max.length=<maximum number of messages to keep in the queue of the stream>. If the queue gets full, older messages will get evicted.

imworker.properties

  • module.redis.host=<ip/host address of central redis>

  • module.redis.port=<port address of central redis>

  • module.redis.password=<password of central redis>

  • module.redis.timeout=<timeout of redis query>

  • module.redis.pool.maxtotal=<Number of redis connections to be maintained in the pool>. Always set this value higher than the maximum number of threads (worker) you configure to run.

  • module.redis.pool.close.after.ms=<Milliseconds to wait before destroying the Redis connection pool>

  • module.job.queue=<name of the redis stream the messages are supposed to be consumed from> // this should be same stream which controller is sending to.

  • module.job.consumer.group=<group id of the consumer>

  • module.job.consumer.id=<id of the consumer>

  • module.job.stream.poll.count=<maximum number of messages to fetch at once>

  • module.job.stream.poll.delay.millis=<frequency in milliseconds to poll the messages from the stream>

  • module.workers.core=<number of worker threads to run initially>

  • module.workers.max=<maximum number of threads that the module can run>

  • module.workers.queue.length=<maximum number of tasks can be pending in the queue>. // If the queue gets full, RejectedExecutionException will be thrown and the task execution will get discarded.

  • module.slack.webhook.url=<slack webhook url>