Skip to content

Commit 9bc0a37

Browse files
fix: Added placeholder kwargs to StructuredLogHandler (#845)
* fix: Added placeholder kwargs to StructuredLogHandler * Replaced unused named arguments with **kwargs * 🦉 Updates from OwlBot post-processor See https://github.com/googleapis/repo-automation-bots/blob/main/packages/owl-bot/README.md * linting * Update structured_log.py --------- Co-authored-by: Owl Bot <gcf-owl-bot[bot]@users.noreply.github.com>
1 parent a461ac0 commit 9bc0a37

File tree

3 files changed

+44
-1
lines changed

3 files changed

+44
-1
lines changed

google/cloud/logging_v2/handlers/handlers.py

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -157,6 +157,7 @@ def __init__(
157157
resource=None,
158158
labels=None,
159159
stream=None,
160+
**kwargs,
160161
):
161162
"""
162163
Args:

google/cloud/logging_v2/handlers/structured_log.py

Lines changed: 7 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,13 @@ class StructuredLogHandler(logging.StreamHandler):
6363
"""
6464

6565
def __init__(
66-
self, *, labels=None, stream=None, project_id=None, json_encoder_cls=None
66+
self,
67+
*,
68+
labels=None,
69+
stream=None,
70+
project_id=None,
71+
json_encoder_cls=None,
72+
**kwargs
6773
):
6874
"""
6975
Args:

tests/unit/test_client.py

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -894,6 +894,42 @@ def test_setup_logging_w_extra_kwargs(self):
894894
}
895895
self.assertEqual(kwargs, expected_kwargs)
896896

897+
def test_setup_logging_w_extra_kwargs_structured_log(self):
898+
import io
899+
from google.cloud.logging.handlers import StructuredLogHandler
900+
from google.cloud.logging import Resource
901+
from google.cloud.logging_v2.client import _GKE_RESOURCE_TYPE
902+
903+
name = "test-logger"
904+
resource = Resource(_GKE_RESOURCE_TYPE, {"resource_label": "value"})
905+
labels = {"handler_label": "value"}
906+
stream = io.BytesIO()
907+
908+
credentials = _make_credentials()
909+
client = self._make_one(
910+
project=self.PROJECT, credentials=credentials, _use_grpc=False
911+
)
912+
913+
with mock.patch("google.cloud.logging_v2.client.setup_logging") as mocked:
914+
client.setup_logging(
915+
name=name, resource=resource, labels=labels, stream=stream
916+
)
917+
918+
self.assertEqual(len(mocked.mock_calls), 1)
919+
_, args, kwargs = mocked.mock_calls[0]
920+
921+
(handler,) = args
922+
self.assertIsInstance(handler, StructuredLogHandler)
923+
924+
expected_kwargs = {
925+
"excluded_loggers": (
926+
"google.api_core.bidi",
927+
"werkzeug",
928+
),
929+
"log_level": 20,
930+
}
931+
self.assertEqual(kwargs, expected_kwargs)
932+
897933

898934
class _Connection(object):
899935
_called_with = None

0 commit comments

Comments
 (0)