Skip to content

Commit c4704d6

Browse files
committed
fix stuff
1 parent 4d1924f commit c4704d6

File tree

7 files changed

+36
-60
lines changed

7 files changed

+36
-60
lines changed

logging/google/cloud/logging/handlers/app_engine.py

Lines changed: 10 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -14,35 +14,26 @@
1414

1515
"""Logging handler for App Engine Flexible
1616
17-
Logs to the well-known file that the fluentd sidecar container on App Engine
18-
Flexible is configured to read from and send to Stackdriver Logging.
19-
20-
See the fluentd configuration here:
21-
22-
https://github.com/GoogleCloudPlatform/appengine-sidecars-docker/tree/master/fluentd_logger
17+
Send logs to Stackdriver Logging API.
2318
"""
2419

25-
# This file is largely copied from:
26-
# https://github.com/GoogleCloudPlatform/python-compat-runtime/blob/master
27-
# /appengine-vmruntime/vmruntime/cloud_logging.py
28-
29-
import logging.handlers
3020
import os
3121

3222
from google.cloud.logging.handlers.handlers import CloudLoggingHandler
23+
from google.cloud.logging.handlers.handlers import EXCLUDED_LOGGER_DEFAULTS
3324
from google.cloud.logging.handlers.transports import BackgroundThreadTransport
3425
from google.cloud.logging.resource import Resource
3526

36-
DEFAULT_LOGGER_NAME = 'python'
27+
GAE_PROJECT_ENV = 'GCLOUD_PROJECT'
3728

38-
EXCLUDED_LOGGER_DEFAULTS = ('google.cloud', 'oauth2client')
29+
DEFAULT_LOGGER_NAME = 'projects/{}/logs/app'.format(os.environ.get(GAE_PROJECT_ENV))
3930

4031
GAE_RESOURCE = Resource(
4132
type='gae_app',
4233
labels={
43-
'project_id': os.getenv('GCLOUD_PROJECT'),
44-
'module_id': os.getenv('GAE_SERVICE'),
45-
'version_id': os.getenv('GAE_VERSION'),
34+
'project_id': os.environ.get(GAE_PROJECT_ENV),
35+
'module_id': os.environ.get('GAE_SERVICE'),
36+
'version_id': os.environ.get('GAE_VERSION'),
4637
},
4738
)
4839

@@ -77,7 +68,6 @@ class AppEngineHandler(CloudLoggingHandler):
7768
"""
7869

7970
def __init__(self, client,
80-
name=DEFAULT_LOGGER_NAME,
81-
transport=BackgroundThreadTransport,
82-
resource=GAE_RESOURCE):
83-
super(AppEngineHandler, self).__init__(client, name, transport, resource)
71+
name=EXCLUDED_LOGGER_DEFAULTS,
72+
transport=BackgroundThreadTransport):
73+
super(AppEngineHandler, self).__init__(client, name, transport, resource=GAE_RESOURCE)

logging/google/cloud/logging/handlers/transports/background_thread.py

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,6 @@
2828
from six.moves import queue
2929

3030
from google.cloud.logging.handlers.transports.base import Transport
31-
from google.cloud.logging.logger import _GLOBAL_RESOURCE
3231

3332
_DEFAULT_GRACE_PERIOD = 5.0 # Seconds
3433
_DEFAULT_MAX_BATCH_SIZE = 10
@@ -258,7 +257,7 @@ def __init__(self, client, name, grace_period=_DEFAULT_GRACE_PERIOD,
258257
self.worker = _Worker(logger)
259258
self.worker.start()
260259

261-
def send(self, record, message, resource=_GLOBAL_RESOURCE):
260+
def send(self, record, message, resource=None):
262261
"""Overrides Transport.send().
263262
264263
:type record: :class:`logging.LogRecord`

logging/google/cloud/logging/handlers/transports/base.py

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ class Transport(object):
2222
client and name object, and must override :meth:`send`.
2323
"""
2424

25-
def send(self, record, message, resource):
25+
def send(self, record, message, resource=None):
2626
"""Transport send to be implemented by subclasses.
2727
2828
:type record: :class:`logging.LogRecord`

logging/google/cloud/logging/handlers/transports/sync.py

Lines changed: 1 addition & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -21,9 +21,6 @@
2121
from google.cloud.logging.resource import Resource
2222

2323

24-
_GLOBAL_RESOURCE = Resource(type='global', labels={})
25-
26-
2724
class SyncTransport(Transport):
2825
"""Basic sychronous transport.
2926
@@ -33,7 +30,7 @@ class SyncTransport(Transport):
3330
def __init__(self, client, name):
3431
self.logger = client.logger(name)
3532

36-
def send(self, record, message, resource=_GLOBAL_RESOURCE):
33+
def send(self, record, message, resource=None):
3734
"""Overrides transport.send().
3835
3936
:type record: :class:`logging.LogRecord`

logging/tests/unit/handlers/test_app_engine.py

Lines changed: 16 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -15,11 +15,21 @@
1515
import logging
1616
import os
1717
import unittest
18-
from google.cloud.logging.resource import Resource
1918

2019

2120
class TestAppEngineHandlerHandler(unittest.TestCase):
22-
PROJECT = 'PROJECT'
21+
from google.cloud.logging.resource import Resource
22+
23+
GAE_PROJECT_ENV = 'PROJECT'
24+
25+
GAE_RESOURCE = Resource(
26+
type='gae_app',
27+
labels={
28+
'project_id': os.environ.get(GAE_PROJECT_ENV),
29+
'module_id': os.environ.get('GAE_SERVICE'),
30+
'version_id': os.environ.get('GAE_VERSION'),
31+
},
32+
)
2333

2434
def _get_target_class(self):
2535
from google.cloud.logging.handlers.app_engine import AppEngineHandler
@@ -30,29 +40,21 @@ def _make_one(self, *args, **kw):
3040
return self._get_target_class()(*args, **kw)
3141

3242
def test_ctor(self):
33-
client = _Client(self.PROJECT)
43+
client = _Client(self.GAE_PROJECT_ENV)
3444
handler = self._make_one(client, transport=_Transport)
3545
self.assertEqual(handler.client, client)
46+
self.assertEqual(handler.resource, self.GAE_RESOURCE)
3647

3748
def test_emit(self):
38-
RESOURCE = Resource(
39-
type='gae_app',
40-
labels={
41-
'project_id': os.getenv('GCLOUD_PROJECT'),
42-
'module_id': os.getenv('GAE_SERVICE'),
43-
'version_id': os.getenv('GAE_VERSION'),
44-
},
45-
)
46-
47-
client = _Client(self.PROJECT)
49+
client = _Client(self.GAE_PROJECT_ENV)
4850
handler = self._make_one(client, transport=_Transport)
4951
logname = 'loggername'
5052
message = 'hello world'
5153
record = logging.LogRecord(logname, logging, None, None, message,
5254
None, None)
5355
handler.emit(record)
5456

55-
self.assertEqual(handler.transport.send_called_with, (record, message, RESOURCE))
57+
self.assertEqual(handler.transport.send_called_with, (record, message, self.GAE_RESOURCE))
5658

5759

5860
class _Client(object):

logging/tests/unit/handlers/transports/test_background_thread.py

Lines changed: 3 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@
1414

1515
import logging
1616
import unittest
17-
from google.cloud.logging.resource import Resource
1817

1918
import mock
2019
from six.moves import queue
@@ -48,12 +47,7 @@ def test_constructor(self):
4847
self.assertEqual(logger.name, name)
4948

5049
def test_send(self):
51-
RESOURCE = Resource(
52-
type='gae_app',
53-
labels={
54-
'module_id': 'default',
55-
'version_id': 'test',
56-
})
50+
from google.cloud.logging.logger import _GLOBAL_RESOURCE
5751

5852
client = _Client(self.PROJECT)
5953
name = 'python_logger'
@@ -67,9 +61,9 @@ def test_send(self):
6761
python_logger_name, logging.INFO,
6862
None, None, message, None, None)
6963

70-
transport.send(record, message, RESOURCE)
64+
transport.send(record, message, _GLOBAL_RESOURCE)
7165

72-
transport.worker.enqueue.assert_called_once_with(record, message, RESOURCE)
66+
transport.worker.enqueue.assert_called_once_with(record, message, _GLOBAL_RESOURCE)
7367

7468
def test_flush(self):
7569
client = _Client(self.PROJECT)

logging/tests/unit/handlers/transports/test_sync.py

Lines changed: 4 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -14,8 +14,6 @@
1414

1515
import logging
1616
import unittest
17-
from google.cloud.logging.resource import Resource
18-
from google.cloud.logging.logger import _GLOBAL_RESOURCE
1917

2018

2119
class TestSyncHandler(unittest.TestCase):
@@ -38,12 +36,7 @@ def test_ctor(self):
3836
self.assertEqual(transport.logger.name, 'python_logger')
3937

4038
def test_send(self):
41-
RESOURCE = Resource(
42-
type='gae_app',
43-
labels={
44-
'module_id': 'default',
45-
'version_id': 'test',
46-
})
39+
from google.cloud.logging.logger import _GLOBAL_RESOURCE
4740

4841
client = _Client(self.PROJECT)
4942

@@ -54,17 +47,18 @@ def test_send(self):
5447
record = logging.LogRecord(python_logger_name, logging.INFO,
5548
None, None, message, None, None)
5649

57-
transport.send(record, message, RESOURCE)
50+
transport.send(record, message, _GLOBAL_RESOURCE)
5851
EXPECTED_STRUCT = {
5952
'message': message,
6053
'python_logger': python_logger_name,
6154
}
62-
EXPECTED_SENT = (EXPECTED_STRUCT, 'INFO', RESOURCE)
55+
EXPECTED_SENT = (EXPECTED_STRUCT, 'INFO', _GLOBAL_RESOURCE)
6356
self.assertEqual(
6457
transport.logger.log_struct_called_with, EXPECTED_SENT)
6558

6659

6760
class _Logger(object):
61+
from google.cloud.logging.logger import _GLOBAL_RESOURCE
6862

6963
def __init__(self, name):
7064
self.name = name

0 commit comments

Comments
 (0)