From 61d35434193359b4e88cb700dd480cb2c4a8c789 Mon Sep 17 00:00:00 2001 From: Ezhil Shanmugham Date: Tue, 4 Feb 2025 01:28:47 +0530 Subject: [PATCH] feat: netbox provider --- docker-compose.dev.yml | 6 ++++++ .../netbox_provider/netbox_provider.py | 20 ++++++++++++------- 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/docker-compose.dev.yml b/docker-compose.dev.yml index 40e727b48..85e03ae53 100644 --- a/docker-compose.dev.yml +++ b/docker-compose.dev.yml @@ -4,6 +4,7 @@ services: file: docker-compose.common.yml service: keep-frontend-common environment: + - AUTH_TYPE=DB - API_URL=http://keep-backend-dev:8080 - SENTRY_DISABLED=true build: @@ -21,6 +22,11 @@ services: service: keep-backend-common build: dockerfile: docker/Dockerfile.dev.api + environment: + - AUTH_TYPE=DB + - KEEP_JWT_SECRET=verysecretkey + - KEEP_DEFAULT_USERNAME=keep + - KEEP_DEFAULT_PASSWORD=keep volumes: - .:/app - ./state:/state diff --git a/keep/providers/netbox_provider/netbox_provider.py b/keep/providers/netbox_provider/netbox_provider.py index f660ded01..64af392ea 100644 --- a/keep/providers/netbox_provider/netbox_provider.py +++ b/keep/providers/netbox_provider/netbox_provider.py @@ -46,14 +46,20 @@ def validate_config(self): def _format_alert( event: dict, provider_instance: "BaseProvider" = None ) -> AlertDto: + + data = event.get("data", {}) + snapshots = event.get("snapshots", {}) + alert = AlertDto( - name=event["event"], - lastReceived=event["timestamp"], - model=event["model"], - username=event["username"], - id=event["request_id"], - data=event["data"], - snapshots=event["snapshots"], + name=data.get("name", "Could not fetch name"), + lastReceived=event.get("timestamp"), + startedAt=data.get("created"), + model=event.get("model", "Could not fetch model"), + username=event.get("username", "Could not fetch username"), + id=event.get("request_id"), + data=data, + description=event.get("event"), + snapshots=snapshots, source=["netbox"] )