Skip to content

Commit

Permalink
fix: renaming for cloud run (#3215)
Browse files Browse the repository at this point in the history
  • Loading branch information
talboren authored Jan 29, 2025
1 parent 90e1b16 commit 8ecd2b3
Show file tree
Hide file tree
Showing 3 changed files with 25 additions and 4 deletions.
20 changes: 18 additions & 2 deletions keep/api/logging.py
Original file line number Diff line number Diff line change
Expand Up @@ -2,15 +2,18 @@
import inspect
import logging
import logging.config
import logging.handlers
import os
import uuid
from datetime import datetime
from threading import Timer

# tb: small hack to avoid the InsecureRequestWarning logs
import urllib3
from pythonjsonlogger import jsonlogger
from sqlmodel import Session

from keep.api.consts import RUNNING_IN_CLOUD_RUN
from keep.api.core.db import get_session, push_logs_to_db
from keep.api.models.db.provider import ProviderExecutionLog

Expand Down Expand Up @@ -222,13 +225,26 @@ def format(self, record):
return f"{message} {extra_info}"


class CustomJsonFormatter(jsonlogger.JsonFormatter):
def __init__(self, *args, rename_fields=None, **kwargs):
super().__init__(*args, **kwargs)
self.rename_fields = rename_fields if RUNNING_IN_CLOUD_RUN else {}


CONFIG = {
"version": 1,
"disable_existing_loggers": False,
"formatters": {
"json": {
"format": "%(asctime)s %(message)s %(levelname)s %(name)s %(filename)s %(otelTraceID)s %(otelSpanID)s %(otelServiceName)s %(threadName)s %(process)s %(module)s",
"class": "pythonjsonlogger.jsonlogger.JsonFormatter",
"()": CustomJsonFormatter,
"fmt": "%(asctime)s %(message)s %(levelname)s %(name)s %(filename)s %(otelTraceID)s %(otelSpanID)s %(otelTraceSampled)s %(otelServiceName)s %(threadName)s %(process)s %(module)s",
"rename_fields": {
"levelname": "severity",
"asctime": "timestamp",
"otelTraceID": "logging.googleapis.com/trace",
"otelSpanID": "logging.googleapis.com/spanId",
"otelTraceSampled": "logging.googleapis.com/trace_sampled",
},
},
"dev_terminal": {
"()": DevTerminalFormatter,
Expand Down
7 changes: 6 additions & 1 deletion keep/api/observability.py
Original file line number Diff line number Diff line change
Expand Up @@ -53,7 +53,12 @@ def setup(app: FastAPI):
)
metrics_enabled = os.environ.get("METRIC_OTEL_ENABLED", "")

resource = Resource.create({"service.name": service_name})
resource = Resource.create(
attributes={
"SERVICE.NAME": service_name,
"SERVICE_INSTANCE_ID": f"worker-{os.getpid()}",
}
)
provider = TracerProvider(resource=resource)

if otlp_collector_endpoint:
Expand Down
2 changes: 1 addition & 1 deletion keep/providers/checkmk_provider/checkmk_provider.py
Original file line number Diff line number Diff line change
Expand Up @@ -107,7 +107,7 @@ def _set_severity(status):
logger.info(f"Microtime: {microtime}")
if microtime:
ts = int(int(microtime) / 1000000)
dt_object = datetime.datetime.fromtimestamp(ts)
dt_object = datetime.fromtimestamp(ts)
last_received = dt_object.isoformat()
else:
last_received = CheckmkProvider.convert_to_utc_isoformat(
Expand Down

0 comments on commit 8ecd2b3

Please sign in to comment.