Skip to content

Commit 8e014f6

Browse files
authored
Configure logger where used (#259)
* Configure logger inplace * pump version
1 parent 74c650e commit 8e014f6

File tree

3 files changed

+20
-35
lines changed

3 files changed

+20
-35
lines changed

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
[project]
22
name = "resonate-sdk"
3-
version = "0.5.2"
3+
version = "0.5.3"
44
description = "Distributed Async Await by Resonate HQ, Inc"
55
readme = "README.md"
66
authors = [{ name = "Resonate HQ, Inc", email = "[email protected]" }]

resonate/logging.py

Lines changed: 0 additions & 34 deletions
This file was deleted.

resonate/scheduler.py

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,7 @@
11
from __future__ import annotations
22

33
import logging
4+
import os
45
import sys
56
import time
67
import uuid
@@ -48,7 +49,25 @@
4849
from resonate.models.retry_policy import RetryPolicy
4950
from resonate.options import Options
5051

52+
53+
class LogRecordFormatter(logging.Formatter):
54+
def format(self, record: logging.LogRecord) -> str:
55+
record.computation_id = getattr(record, "computation_id", "none")
56+
record.id = getattr(record, "id", "")
57+
record.attempt = f"(attempt={attempt})" if (attempt := getattr(record, "attempt", 1)) > 1 else ""
58+
return super().format(record)
59+
60+
5161
logger = logging.getLogger(__package__)
62+
logger.setLevel(os.environ.get("LOG_LEVEL", "INFO").upper())
63+
handler = logging.StreamHandler()
64+
handler.setFormatter(
65+
LogRecordFormatter(
66+
fmt="%(asctime)s %(levelname)s [%(name)s] %(computation_id)s::%(id)s %(message)s %(attempt)s",
67+
datefmt="%Y-%m-%d %H:%M:%S",
68+
),
69+
)
70+
logger.addHandler(handler)
5271

5372

5473
class Scheduler:

0 commit comments

Comments
 (0)