Skip to content
Snippets Groups Projects
Commit 46646188 authored by Zitnik, Anze's avatar Zitnik, Anze
Browse files

Merge branch 'cron-interval' into 'master'

Custom Cron job interval

See merge request medina/evidence-collector!12
parents 2eb0fa06 4ee3ff18
No related branches found
No related tags found
No related merge requests found
...@@ -19,3 +19,5 @@ clouditor_port=9090 ...@@ -19,3 +19,5 @@ clouditor_port=9090
clouditor_oauth2_port=8080 clouditor_oauth2_port=8080
clouditor_client_id=clouditor clouditor_client_id=clouditor
clouditor_client_secret=clouditor clouditor_client_secret=clouditor
wazuh_check_interval=300
\ No newline at end of file
VERSION=v0.0.13 VERSION=v0.0.14
SERVICE=evidence-collector SERVICE=evidence-collector
...@@ -5,6 +5,6 @@ run: ...@@ -5,6 +5,6 @@ run:
docker run --env-file .env -v ${PWD}/resource_id_map.json:/evidence-collector/resource_id_map.json --name evidence-collector evidence-collector docker run --env-file .env -v ${PWD}/resource_id_map.json:/evidence-collector/resource_id_map.json --name evidence-collector evidence-collector
stop-and-clean: stop-and-clean:
docker stop evidence-collector || \ docker stop evidence-collector
docker rm evidence-collector || \ docker container rm evidence-collector
docker volume rm resource_id_map.json docker volume rm resource_id_map.json
\ No newline at end of file
...@@ -103,6 +103,7 @@ All of the following environment variables have to be set (or passed to containe ...@@ -103,6 +103,7 @@ All of the following environment variables have to be set (or passed to containe
| `clouditor_oauth2_port` | Clouditor port used for authentication services. Default value `8080`. | | `clouditor_oauth2_port` | Clouditor port used for authentication services. Default value `8080`. |
| `clouditor_client_id` | Clouditor OAuth2 default id. Default value `clouditor`. | | `clouditor_client_id` | Clouditor OAuth2 default id. Default value `clouditor`. |
| `clouditor_client_secret` | Clouditor OAuth2 default secret. Default value `clouditor`. | | `clouditor_client_secret` | Clouditor OAuth2 default secret. Default value `clouditor`. |
| `wazuh_check_interval` | Interval in seconds; how often should evidence be created and forwarded. Should be the same as the check interval set on Wazuh manager. |
### Medina resource ID mapping ### Medina resource ID mapping
......
...@@ -21,3 +21,5 @@ data: ...@@ -21,3 +21,5 @@ data:
clouditor_host: 'security-assessment-svc' clouditor_host: 'security-assessment-svc'
clouditor_port: '9090' clouditor_port: '9090'
wazuh_check_interval: '300'
\ No newline at end of file
...@@ -9,6 +9,8 @@ REDIS_HOST = os.environ.get("redis_host") ...@@ -9,6 +9,8 @@ REDIS_HOST = os.environ.get("redis_host")
REDIS_PORT = int(os.environ.get("redis_port")) REDIS_PORT = int(os.environ.get("redis_port"))
REDIS_QUEUE = os.environ.get("redis_queue") REDIS_QUEUE = os.environ.get("redis_queue")
WAZUH_CHECK_INTERVAL = int(os.environ.get("wazuh_check_interval"))
def remove_jobs(scheduler): def remove_jobs(scheduler):
jobs = scheduler.get_jobs() jobs = scheduler.get_jobs()
for job in jobs: for job in jobs:
...@@ -23,13 +25,10 @@ redis = Redis(REDIS_HOST, REDIS_PORT) ...@@ -23,13 +25,10 @@ redis = Redis(REDIS_HOST, REDIS_PORT)
q = Queue(REDIS_QUEUE, connection=redis) q = Queue(REDIS_QUEUE, connection=redis)
scheduler = Scheduler(connection=redis) scheduler = Scheduler(connection=redis)
# TODO: Remove if needed
remove_jobs(scheduler) remove_jobs(scheduler)
# TODO: Change cron expression and repeat value for production verion.
# Should probably be "0 0 * * * ".
scheduler.cron( scheduler.cron(
'* * * * * ', '*/' + str(int(WAZUH_CHECK_INTERVAL / 60)) + ' * * * * ',
func=wazuh_evidence_collector.main, func=wazuh_evidence_collector.main,
args=[], args=[],
repeat=None, repeat=None,
...@@ -37,5 +36,4 @@ scheduler.cron( ...@@ -37,5 +36,4 @@ scheduler.cron(
use_local_timezone=False use_local_timezone=False
) )
# TODO: Remove if needed
print_jobs(scheduler) print_jobs(scheduler)
\ No newline at end of file
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment