Skip to content
This repository was archived by the owner on Apr 26, 2024. It is now read-only.

Commit 003790e

Browse files
committed
Fix mypy and some comments.
1 parent ad15b34 commit 003790e

File tree

2 files changed

+17
-12
lines changed

2 files changed

+17
-12
lines changed

synapse/logging/_remote.py

Lines changed: 12 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ class LogProducer:
4949
"""
5050

5151
transport = attr.ib(type=ITransport)
52-
_handler = attr.ib(type="RemoteHandler")
52+
_handler = attr.ib(type="Optional[RemoteHandler]")
5353
_paused = attr.ib(default=True, type=bool, init=False)
5454

5555
def pauseProducing(self):
@@ -63,6 +63,9 @@ def resumeProducing(self):
6363
# If we're already producing, nothing to do.
6464
self._paused = False
6565

66+
# _handler should always be set while this is resumed.
67+
assert self._handler
68+
6669
# Loop until paused.
6770
while self._paused is False and (
6871
self._handler._buffer and self.transport.connected
@@ -84,7 +87,7 @@ def resumeProducing(self):
8487

8588
class RemoteHandler(logging.Handler):
8689
"""
87-
An IObserver that writes JSON logs to a TCP target.
90+
An logging handler that writes logs to a TCP target.
8891
8992
Args:
9093
host: The host of the logging target.
@@ -98,7 +101,7 @@ def __init__(
98101
port: int,
99102
maximum_buffer: int = 1000,
100103
level=logging.NOTSET,
101-
reactor=None,
104+
_reactor=None,
102105
):
103106
super().__init__(level=level)
104107
self.host = host
@@ -111,22 +114,24 @@ def __init__(
111114
self._producer = None # type: Optional[LogProducer]
112115

113116
# Connect without DNS lookups if it's a direct IP.
114-
if reactor is None:
117+
if _reactor is None:
115118
from twisted.internet import reactor
116119

120+
_reactor = reactor
121+
117122
try:
118123
ip = ip_address(self.host)
119124
if isinstance(ip, IPv4Address):
120-
endpoint = TCP4ClientEndpoint(reactor, self.host, self.port)
125+
endpoint = TCP4ClientEndpoint(_reactor, self.host, self.port)
121126
elif isinstance(ip, IPv6Address):
122-
endpoint = TCP6ClientEndpoint(reactor, self.host, self.port)
127+
endpoint = TCP6ClientEndpoint(_reactor, self.host, self.port)
123128
else:
124129
raise ValueError("Unknown IP address provided: %s" % (self.host,))
125130
except ValueError:
126131
endpoint = HostnameEndpoint(reactor, self.host, self.port)
127132

128133
factory = Factory.forProtocol(Protocol)
129-
self._service = ClientService(endpoint, factory, clock=reactor)
134+
self._service = ClientService(endpoint, factory, clock=_reactor)
130135
self._service.startService()
131136
self._connect()
132137

tests/logging/test_remote_handler.py

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -53,9 +53,9 @@ class RemoteHandlerTestCase(StructuredLoggingTestBase, HomeserverTestCase):
5353
@DEBUG
5454
def test_log_output(self):
5555
"""
56-
The Terse JSON outputter delivers simplified structured logs over TCP.
56+
The remote handler delivers logs over TCP.
5757
"""
58-
handler = RemoteHandler("127.0.0.1", 9000, reactor=self.reactor)
58+
handler = RemoteHandler("127.0.0.1", 9000, _reactor=self.reactor)
5959
logger = logging.getLogger()
6060
logger.addHandler(handler)
6161

@@ -81,7 +81,7 @@ def test_log_backpressure_debug(self):
8181
When backpressure is hit, DEBUG logs will be shed.
8282
"""
8383
handler = RemoteHandler(
84-
"127.0.0.1", 9000, maximum_buffer=10, reactor=self.reactor
84+
"127.0.0.1", 9000, maximum_buffer=10, _reactor=self.reactor
8585
)
8686
logger = logging.getLogger()
8787
logger.addHandler(handler)
@@ -112,7 +112,7 @@ def test_log_backpressure_info(self):
112112
When backpressure is hit, DEBUG and INFO logs will be shed.
113113
"""
114114
handler = RemoteHandler(
115-
"127.0.0.1", 9000, maximum_buffer=10, reactor=self.reactor
115+
"127.0.0.1", 9000, maximum_buffer=10, _reactor=self.reactor
116116
)
117117
logger = logging.getLogger()
118118
logger.addHandler(handler)
@@ -149,7 +149,7 @@ def test_log_backpressure_cut_middle(self):
149149
it will cut the middle messages out.
150150
"""
151151
handler = RemoteHandler(
152-
"127.0.0.1", 9000, maximum_buffer=10, reactor=self.reactor
152+
"127.0.0.1", 9000, maximum_buffer=10, _reactor=self.reactor
153153
)
154154
logger = logging.getLogger()
155155
logger.addHandler(handler)

0 commit comments

Comments
 (0)