Skip to content

Commit 10bb6ea

Browse files
committed
feat: add base logger to enable debug logging
1 parent 46b3d3a commit 10bb6ea

File tree

2 files changed

+33
-0
lines changed

2 files changed

+33
-0
lines changed

google/api_core/client_logging.py

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,16 @@
1+
import logging
2+
3+
4+
class BaseLogger:
5+
6+
def __init__(self, log_level=logging.CRITICAL):
7+
self._logger = logging.getLogger("google")
8+
self._logger.setLevel(log_level)
9+
console_handler = logging.StreamHandler()
10+
console_handler.setLevel(log_level)
11+
formatter = logging.Formatter("%(asctime)s - %(name)s - %(levelname)s - %(message)s")
12+
console_handler.setFormatter(formatter)
13+
self._logger.addHandler(console_handler)
14+
15+
def get_logger(self):
16+
return self._logger

tests/unit/test_client_logging.py

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
import logging
2+
import pytest
3+
4+
from google.api_core.client_logging import BaseLogger
5+
6+
7+
def test_base_logger(caplog):
8+
9+
logger = BaseLogger().get_logger()
10+
11+
with caplog.at_level(logging.INFO, logger="google"):
12+
logger.info("This is a test message.")
13+
14+
assert "This is a test message." in caplog.text
15+
assert caplog.records[0].name == "google"
16+
assert caplog.records[0].levelname == "INFO"
17+
assert caplog.records[0].message == "This is a test message."

0 commit comments

Comments
 (0)