Created
January 14, 2019 23:37
-
-
Save haizaar/d9033b531759ee73807cc8b3f035b742 to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$ python bug-subscribe-and-do-nothing.py | |
2019-01-15T00:14:01 Entering re-connect loop | |
2019-01-15T00:14:01 trying transport 0 using connect delay 0 | |
2019-01-15T00:14:01 connecting once using transport type "websocket" over endpoint "tcp" | |
2019-01-15T00:14:02 | |
[('logOctets', False, 'WampWebSocketClientFactory'), | |
('logFrames', False, 'WampWebSocketClientFactory'), | |
('trackTimings', False, 'WampWebSocketClientFactory'), | |
('utf8validateIncoming', True, 'WampWebSocketClientFactory'), | |
('applyMask', True, 'WampWebSocketClientFactory'), | |
('maxFramePayloadSize', 0, 'WampWebSocketClientFactory'), | |
('maxMessagePayloadSize', 0, 'WampWebSocketClientFactory'), | |
('autoFragmentSize', 0, 'WampWebSocketClientFactory'), | |
('failByDrop', True, 'WampWebSocketClientFactory'), | |
('echoCloseCodeReason', False, 'WampWebSocketClientFactory'), | |
('openHandshakeTimeout', 5, 'WampWebSocketClientFactory'), | |
('closeHandshakeTimeout', 1, 'WampWebSocketClientFactory'), | |
('tcpNoDelay', True, 'WampWebSocketClientFactory'), | |
('autoPingInterval', 0, 'WampWebSocketClientFactory'), | |
('autoPingTimeout', 0, 'WampWebSocketClientFactory'), | |
('autoPingSize', 4, 'WampWebSocketClientFactory'), | |
('version', 18, 'WampWebSocketClientFactory'), | |
('acceptMaskedServerFrames', False, 'WampWebSocketClientFactory'), | |
('maskClientFrames', True, 'WampWebSocketClientFactory'), | |
('serverConnectionDropTimeout', 1, 'WampWebSocketClientFactory'), | |
('perMessageCompressionOffers', [], 'WampWebSocketClientFactory'), | |
('perMessageCompressionAccept', | |
<function WebSocketClientFactory.resetProtocolOptions.<locals>.<lambda> at 0x7f0d402bed08>, | |
'WampWebSocketClientFactory')] | |
2019-01-15T00:14:02 connection to tcp:ip.is.hidden:443 established | |
2019-01-15T00:14:02 GET /link HTTP/1.1 | |
User-Agent: AutobahnPython/19.1.1 | |
Host: example.com:443 | |
Upgrade: WebSocket | |
Connection: Upgrade | |
Pragma: no-cache | |
Cache-Control: no-cache | |
Sec-WebSocket-Key: 6XEuZ+nMZHlhWxZyFQPWDw== | |
Sec-WebSocket-Protocol: wamp.2.cbor,wamp.2.json | |
Sec-WebSocket-Version: 13 | |
2019-01-15T00:14:02 received HTTP response: | |
b'HTTP/1.1 101 Switching Protocols\r\nServer: nginx\r\nDate: Mon, 14 Jan 2019 13:14:02 GMT\r\nConnection: upgrade\r\nUpgrade: WebSocket\r\nSec-WebSocket-Protocol: wamp.2.cbor\r\nSec-WebSocket-Accept: uNXF94uw0ORosE7XTmZ1k0X//Co=\r\nVia: 1.1 google\r\nAlt-Svc: clear\r\n\r\n' | |
2019-01-15T00:14:02 received HTTP status line in opening handshake : HTTP/1.1 101 Switching Protocols | |
2019-01-15T00:14:02 received HTTP headers in opening handshake : {'server': 'nginx', 'date': 'Mon, 14 Jan 2019 13:14:02 GMT', 'connection': 'upgrade', 'upgrade': 'WebSocket', 'sec-websocket-protocol': 'wamp.2.cbor', 'sec-websocket-accept': 'uNXF94uw0ORosE7XTmZ1k0X//Co=', 'via': '1.1 google', 'alt-svc': 'clear'} | |
2019-01-15T00:14:02 openHandshakeTimeoutCall.cancel | |
2019-01-15T00:14:03 Entering on_join | |
2019-01-15T00:14:03 Subscribed | |
2019-01-15T00:14:03 Sleeping | |
2019-01-15T00:14:12 WebSocketProtocol.onPing(payload=<4 bytes>) | |
2019-01-15T00:14:22 WebSocketProtocol.onPing(payload=<4 bytes>) | |
2019-01-15T00:14:32 WebSocketProtocol.onPing(payload=<4 bytes>) | |
2019-01-15T00:14:32 _connectionLost: None | |
2019-01-15T00:14:32 WAMP-over-WebSocket transport lost: wasClean=False, code=1006, reason="connection was closed uncleanly (peer dropped the TCP connection without previous WebSocket closing handshake)" | |
2019-01-15T00:14:32 session leaving 'wamp.close.transport_lost' | |
2019-01-15T00:14:32 session on_disconnect: was_clean=False | |
2019-01-15T00:14:32 component failed: TransportLost: failed to complete connection | |
2019-01-15T00:14:32 Traceback (most recent call last): | |
File "/home/.../lib/python3.7/site-packages/txaio/aio.py", line 514, in done | |
res = f.result() | |
File "/home/.../lib/python3.7/site-packages/txaio/aio.py", line 514, in done | |
res = f.result() | |
autobahn.wamp.exception.TransportLost: failed to complete connection | |
2019-01-15T00:14:32 Connection failed: TransportLost: failed to complete connection | |
2019-01-15T00:14:32 Entering re-connect loop | |
2019-01-15T00:14:32 trying transport 0 using connect delay 2.467634918279256 | |
2019-01-15T00:14:35 connecting once using transport type "websocket" over endpoint "tcp" | |
2019-01-15T00:14:35 | |
[('logOctets', False, 'WampWebSocketClientFactory'), | |
('logFrames', False, 'WampWebSocketClientFactory'), | |
('trackTimings', False, 'WampWebSocketClientFactory'), | |
('utf8validateIncoming', True, 'WampWebSocketClientFactory'), | |
('applyMask', True, 'WampWebSocketClientFactory'), | |
('maxFramePayloadSize', 0, 'WampWebSocketClientFactory'), | |
('maxMessagePayloadSize', 0, 'WampWebSocketClientFactory'), | |
('autoFragmentSize', 0, 'WampWebSocketClientFactory'), | |
('failByDrop', True, 'WampWebSocketClientFactory'), | |
('echoCloseCodeReason', False, 'WampWebSocketClientFactory'), | |
('openHandshakeTimeout', 5, 'WampWebSocketClientFactory'), | |
('closeHandshakeTimeout', 1, 'WampWebSocketClientFactory'), | |
('tcpNoDelay', True, 'WampWebSocketClientFactory'), | |
('autoPingInterval', 0, 'WampWebSocketClientFactory'), | |
('autoPingTimeout', 0, 'WampWebSocketClientFactory'), | |
('autoPingSize', 4, 'WampWebSocketClientFactory'), | |
('version', 18, 'WampWebSocketClientFactory'), | |
('acceptMaskedServerFrames', False, 'WampWebSocketClientFactory'), | |
('maskClientFrames', True, 'WampWebSocketClientFactory'), | |
('serverConnectionDropTimeout', 1, 'WampWebSocketClientFactory'), | |
('perMessageCompressionOffers', [], 'WampWebSocketClientFactory'), | |
('perMessageCompressionAccept', | |
<function WebSocketClientFactory.resetProtocolOptions.<locals>.<lambda> at 0x7f0d3f9c3730>, | |
'WampWebSocketClientFactory')] | |
2019-01-15T00:14:35 connection to tcp:ip.is.hidden:443 established | |
2019-01-15T00:14:35 GET /link HTTP/1.1 | |
User-Agent: AutobahnPython/19.1.1 | |
Host: example.com:443 | |
Upgrade: WebSocket | |
Connection: Upgrade | |
Pragma: no-cache | |
Cache-Control: no-cache | |
Sec-WebSocket-Key: Kmppg69rgqkofQ1tH5lTTQ== | |
Sec-WebSocket-Protocol: wamp.2.cbor,wamp.2.json | |
Sec-WebSocket-Version: 13 | |
2019-01-15T00:14:35 received HTTP response: | |
b'HTTP/1.1 101 Switching Protocols\r\nServer: nginx\r\nDate: Mon, 14 Jan 2019 13:14:35 GMT\r\nConnection: upgrade\r\nUpgrade: WebSocket\r\nSec-WebSocket-Protocol: wamp.2.cbor\r\nSec-WebSocket-Accept: oiRSHHieALKlb3+9wVmRsbKdpdE=\r\nVia: 1.1 google\r\nAlt-Svc: clear\r\n\r\n' | |
2019-01-15T00:14:35 received HTTP status line in opening handshake : HTTP/1.1 101 Switching Protocols | |
2019-01-15T00:14:35 received HTTP headers in opening handshake : {'server': 'nginx', 'date': 'Mon, 14 Jan 2019 13:14:35 GMT', 'connection': 'upgrade', 'upgrade': 'WebSocket', 'sec-websocket-protocol': 'wamp.2.cbor', 'sec-websocket-accept': 'oiRSHHieALKlb3+9wVmRsbKdpdE=', 'via': '1.1 google', 'alt-svc': 'clear'} | |
2019-01-15T00:14:35 openHandshakeTimeoutCall.cancel | |
2019-01-15T00:14:35 Entering on_join | |
2019-01-15T00:14:35 Subscribed | |
2019-01-15T00:14:35 Sleeping | |
2019-01-15T00:14:45 WebSocketProtocol.onPing(payload=<4 bytes>) | |
2019-01-15T00:14:55 WebSocketProtocol.onPing(payload=<4 bytes>) | |
2019-01-15T00:15:03 Publishing | |
2019-01-15T00:15:03 While notifying 'join': Traceback (most recent call last): | |
File "/home/.../lib/python3.7/site-packages/txaio/aio.py", line 514, in done | |
res = f.result() | |
File "bug-subscribe-and-do-nothing.py", line 34, in on_join | |
await session.publish("news", "Fake news", options=options) | |
File "/home/.../lib/python3.7/site-packages/autobahn/wamp/protocol.py", line 1278, in publish | |
raise exception.TransportLost() | |
autobahn.wamp.exception.TransportLost | |
2019-01-15T00:15:03 While firing onJoin: Traceback (most recent call last): | |
File "/home/.../lib/python3.7/site-packages/txaio/aio.py", line 514, in done | |
res = f.result() | |
File "/home/.../lib/python3.7/site-packages/txaio/aio.py", line 514, in done | |
res = f.result() | |
File "/home/.../lib/python3.7/site-packages/txaio/aio.py", line 514, in done | |
res = f.result() | |
File "bug-subscribe-and-do-nothing.py", line 34, in on_join | |
await session.publish("news", "Fake news", options=options) | |
File "/home/.../lib/python3.7/site-packages/autobahn/wamp/protocol.py", line 1278, in publish | |
raise exception.TransportLost() | |
autobahn.wamp.exception.TransportLost | |
2019-01-15T00:15:03 While notifying 'ready': Traceback (most recent call last): | |
File "/home/.../lib/python3.7/site-packages/txaio/aio.py", line 514, in done | |
res = f.result() | |
File "/home/.../lib/python3.7/site-packages/txaio/aio.py", line 514, in done | |
res = f.result() | |
File "/home/.../lib/python3.7/site-packages/txaio/aio.py", line 514, in done | |
res = f.result() | |
[Previous line repeated 2 more times] | |
File "bug-subscribe-and-do-nothing.py", line 34, in on_join | |
await session.publish("news", "Fake news", options=options) | |
File "/home/.../lib/python3.7/site-packages/autobahn/wamp/protocol.py", line 1278, in publish | |
raise exception.TransportLost() | |
autobahn.wamp.exception.TransportLost | |
2019-01-15T00:15:05 WebSocketProtocol.onPing(payload=<4 bytes>) | |
2019-01-15T00:15:05 _connectionLost: None | |
2019-01-15T00:15:05 WAMP-over-WebSocket transport lost: wasClean=False, code=1006, reason="connection was closed uncleanly (peer dropped the TCP connection without previous WebSocket closing handshake)" | |
2019-01-15T00:15:05 session leaving 'wamp.close.transport_lost' | |
2019-01-15T00:15:05 session on_disconnect: was_clean=False | |
2019-01-15T00:15:05 component failed: TransportLost: failed to complete connection | |
2019-01-15T00:15:05 Traceback (most recent call last): | |
File "/home/.../lib/python3.7/site-packages/txaio/aio.py", line 514, in done | |
res = f.result() | |
File "/home/.../lib/python3.7/site-packages/txaio/aio.py", line 514, in done | |
res = f.result() | |
autobahn.wamp.exception.TransportLost: failed to complete connection | |
2019-01-15T00:15:05 Connection failed: TransportLost: failed to complete connection | |
2019-01-15T00:15:05 Entering re-connect loop | |
2019-01-15T00:15:05 trying transport 0 using connect delay 3.8440721281200982 | |
2019-01-15T00:15:09 connecting once using transport type "websocket" over endpoint "tcp" | |
2019-01-15T00:15:09 | |
[('logOctets', False, 'WampWebSocketClientFactory'), | |
('logFrames', False, 'WampWebSocketClientFactory'), | |
('trackTimings', False, 'WampWebSocketClientFactory'), | |
('utf8validateIncoming', True, 'WampWebSocketClientFactory'), | |
('applyMask', True, 'WampWebSocketClientFactory'), | |
('maxFramePayloadSize', 0, 'WampWebSocketClientFactory'), | |
('maxMessagePayloadSize', 0, 'WampWebSocketClientFactory'), | |
('autoFragmentSize', 0, 'WampWebSocketClientFactory'), | |
('failByDrop', True, 'WampWebSocketClientFactory'), | |
('echoCloseCodeReason', False, 'WampWebSocketClientFactory'), | |
('openHandshakeTimeout', 5, 'WampWebSocketClientFactory'), | |
('closeHandshakeTimeout', 1, 'WampWebSocketClientFactory'), | |
('tcpNoDelay', True, 'WampWebSocketClientFactory'), | |
('autoPingInterval', 0, 'WampWebSocketClientFactory'), | |
('autoPingTimeout', 0, 'WampWebSocketClientFactory'), | |
('autoPingSize', 4, 'WampWebSocketClientFactory'), | |
('version', 18, 'WampWebSocketClientFactory'), | |
('acceptMaskedServerFrames', False, 'WampWebSocketClientFactory'), | |
('maskClientFrames', True, 'WampWebSocketClientFactory'), | |
('serverConnectionDropTimeout', 1, 'WampWebSocketClientFactory'), | |
('perMessageCompressionOffers', [], 'WampWebSocketClientFactory'), | |
('perMessageCompressionAccept', | |
<function WebSocketClientFactory.resetProtocolOptions.<locals>.<lambda> at 0x7f0d3df42488>, | |
'WampWebSocketClientFactory')] | |
2019-01-15T00:15:09 connection to tcp:ip.is.hidden:443 established | |
2019-01-15T00:15:09 GET /link HTTP/1.1 | |
User-Agent: AutobahnPython/19.1.1 | |
Host: example.com:443 | |
Upgrade: WebSocket | |
Connection: Upgrade | |
Pragma: no-cache | |
Cache-Control: no-cache | |
Sec-WebSocket-Key: EcUtuahCv8sNwn9ZIEkqgA== | |
Sec-WebSocket-Protocol: wamp.2.cbor,wamp.2.json | |
Sec-WebSocket-Version: 13 | |
2019-01-15T00:15:09 received HTTP response: | |
b'HTTP/1.1 101 Switching Protocols\r\nServer: nginx\r\nDate: Mon, 14 Jan 2019 13:15:09 GMT\r\nConnection: upgrade\r\nUpgrade: WebSocket\r\nSec-WebSocket-Protocol: wamp.2.cbor\r\nSec-WebSocket-Accept: hN2N9K7+ntnlw/yN8iL0xsT+D3E=\r\nVia: 1.1 google\r\nAlt-Svc: clear\r\n\r\n' | |
2019-01-15T00:15:09 received HTTP status line in opening handshake : HTTP/1.1 101 Switching Protocols | |
2019-01-15T00:15:09 received HTTP headers in opening handshake : {'server': 'nginx', 'date': 'Mon, 14 Jan 2019 13:15:09 GMT', 'connection': 'upgrade', 'upgrade': 'WebSocket', 'sec-websocket-protocol': 'wamp.2.cbor', 'sec-websocket-accept': 'hN2N9K7+ntnlw/yN8iL0xsT+D3E=', 'via': '1.1 google', 'alt-svc': 'clear'} | |
2019-01-15T00:15:09 openHandshakeTimeoutCall.cancel | |
2019-01-15T00:15:10 Entering on_join | |
2019-01-15T00:15:10 Subscribed | |
2019-01-15T00:15:10 Sleeping |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
import asyncio | |
from autobahn.asyncio.component import Component, run | |
from autobahn.wamp.types import PublishOptions | |
import txaio | |
txaio.start_logging(level='debug') | |
logger = txaio.make_logger() | |
component = Component( | |
transports="wss://example.com", | |
authentication={ | |
"ticket": { | |
"ticket": "secret", | |
} | |
} | |
) | |
def printer(ev): | |
print("Got event", ev) | |
@component.on_join | |
async def on_join(session, details): | |
logger.info("Entering on_join") | |
options = PublishOptions(exclude_me=False, acknowledge=True) | |
logger.info("Subscribed") | |
await session.subscribe(printer, "news") | |
while True: | |
logger.info("Sleeping") | |
await asyncio.sleep(60) | |
logger.info("Publishing") | |
await session.publish("news", "Fake news", options=options) | |
if __name__ == "__main__": | |
run([component]) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
from autobahn.twisted.component import Component | |
from autobahn.twisted.component import run | |
from autobahn.wamp.types import PublishOptions | |
from twisted.internet.defer import inlineCallbacks | |
from twisted.internet.task import deferLater | |
from twisted.internet import reactor | |
import txaio | |
txaio.start_logging(level='debug') | |
logger = txaio.make_logger() | |
component = Component( | |
transports="wss://example.com", | |
authentication={ | |
"ticket": { | |
"ticket": "secret", | |
} | |
} | |
) | |
def printer(ev): | |
print("Got event", ev) | |
@component.on_join | |
@inlineCallbacks | |
def on_join(session, details): | |
logger.info("Entering on_join") | |
options = PublishOptions(exclude_me=False, acknowledge=True) | |
logger.info("Subscribed") | |
yield session.subscribe(printer, "news") | |
while True: | |
logger.info("Sleeping") | |
yield deferLater(reactor, 60, lambda: None) | |
logger.info("Publishing") | |
yield session.publish("news", "Fake news", options=options) | |
if __name__ == "__main__": | |
run([component]) |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
2019-01-14T12:25:04+0000 [Router 14 crossbar.router.protocol.WampWebSocketServerProtocol] Expecting ping in 5.0 seconds for auto-ping/pong | |
2019-01-14T12:25:04+0000 [Router 14 crossbar.router.protocol.WampWebSocketServerProtocol] Auto ping/pong: received pending pong for auto-ping/pong | |
2019-01-14T12:25:04+0000 [Router 14 crossbar.router.protocol.WampWebSocketServerProtocol] WebSocketProtocol.onPong(payload=<4 bytes>) | |
2019-01-14T12:25:14+0000 [Router 14 crossbar.router.protocol.WampWebSocketServerProtocol] Auto ping/pong: sending ping auto-ping/pong | |
2019-01-14T12:25:14+0000 [Router 14 crossbar.router.protocol.WampWebSocketServerProtocol] Expecting ping in 5.0 seconds for auto-ping/pong | |
2019-01-14T12:25:14+0000 [Router 14 crossbar.router.protocol.WampWebSocketServerProtocol] Auto ping/pong: received pending pong for auto-ping/pong | |
2019-01-14T12:25:14+0000 [Router 14 crossbar.router.protocol.WampWebSocketServerProtocol] WebSocketProtocol.onPong(payload=<4 bytes>) | |
2019-01-14T12:25:14+0000 [Router 14 crossbar.router.protocol.WampWebSocketServerProtocol] Connection to/from tcp4:10.200.22.24:57952 was closed cleanly | |
2019-01-14T12:25:14+0000 [Router 14 crossbar.router.protocol.WampWebSocketServerProtocol] _connectionLost: [Failure instance: Traceback (failure with no frames): <class 'twisted.internet.error.ConnectionDone'>: Connection was closed cleanly. | |
] | |
2019-01-14T12:25:14+0000 [Router 14 crossbar.router.protocol.WampWebSocketServerProtocol] Auto ping/pong: canceling autoPingPendingCall upon lost connection | |
2019-01-14T12:25:14+0000 [Router 14 crossbar.router.protocol.WampWebSocketServerProtocol] WAMP-over-WebSocket transport lost: wasClean=False, code=1006, reason="connection was closed uncleanly (peer dropped the TCP connection without previous WebSocket closing handshake)" | |
2019-01-14T12:25:14+0000 [Router 14 crossbar.router.router.Router] session "5535107469550354" left realm "myrealm" | |
2019-01-14T12:25:14+0000 [Router 14 crossbar.router.router.Router] {'session': 5535107469550354, 'authid': 'aad:kaminario.com:2c5289ff-e0ea-4171-9aae-9c3199dc2481', 'authrole': 'peers', 'authmethod': 'ticket', 'authextra': None, 'authprovider': 'dynamic', 'transport': {'type': 'websocket', 'protocol': 'wamp.2.cbor', 'peer': 'tcp4:10.200.22.24:57952', 'http_headers_received': {'upgrade': 'WebSocket', 'connection': 'upgrade', 'host': 'channeler.default.svc.cluster.local:5555', 'user-agent': 'AutobahnPython/19.1.1', 'pragma': 'no-cache', 'cache-control': 'no-cache', 'sec-websocket-key': 'pZrLvQ1kv3mWdd8bFshM0Q==', 'sec-websocket-protocol': 'wamp.2.cbor,wamp.2.json', 'sec-websocket-version': '13', 'x-cloud-trace-context': '9b6af66910977186e69b02a884a60551/14036055621129395511', 'via': '1.1 google', 'x-forwarded-for': 'another.ip.is.hidden, ip.is.hidden', 'x-forwarded-proto': 'https'}, 'http_headers_sent': {}, 'websocket_extensions_in_use': [], 'cbtid': None}} | |
2019-01-14T12:25:14+0000 [Router 14 crossbar.router.service.RouterServiceAgent] RouterServiceAgent.publish("wamp.session.on_leave") -> "wamp.session.on_leave" on "myrealm" | |
2019-01-14T12:25:14+0000 [Router 14 crossbar.router.service.RouterServiceAgent] RouterServiceAgent.publish("wamp.subscription.on_unsubscribe") -> "wamp.subscription.on_unsubscribe" on "myrealm" | |
2019-01-14T12:25:14+0000 [Router 14 crossbar.router.service.RouterServiceAgent] RouterServiceAgent.publish("wamp.subscription.on_delete") -> "wamp.subscription.on_delete" on "myrealm" | |
2019-01-14T12:25:17+0000 [Router 14 crossbar.router.protocol.WampWebSocketServerProtocol] | |
[('logOctets', False, 'WampWebSocketServerFactory'), | |
('logFrames', False, 'WampWebSocketServerFactory'), | |
('trackTimings', False, 'WampWebSocketServerFactory'), | |
('utf8validateIncoming', True, 'WampWebSocketServerFactory'), | |
('applyMask', True, 'WampWebSocketServerFactory'), | |
('maxFramePayloadSize', 1048576, 'WampWebSocketServerFactory'), | |
('maxMessagePayloadSize', 2097152, 'WampWebSocketServerFactory'), | |
('autoFragmentSize', 65536, 'WampWebSocketServerFactory'), | |
('failByDrop', True, 'WampWebSocketServerFactory'), | |
('echoCloseCodeReason', False, 'WampWebSocketServerFactory'), | |
('openHandshakeTimeout', 2.5, 'WampWebSocketServerFactory'), | |
('closeHandshakeTimeout', 1, 'WampWebSocketServerFactory'), | |
('tcpNoDelay', True, 'WampWebSocketServerFactory'), | |
('autoPingInterval', 10.0, 'WampWebSocketServerFactory'), | |
('autoPingTimeout', 5.0, 'WampWebSocketServerFactory'), | |
('autoPingSize', 4, 'WampWebSocketServerFactory'), | |
('versions', [8, 13], 'WampWebSocketServerFactory'), | |
('webStatus', False, 'WampWebSocketServerFactory'), | |
('requireMaskedClientFrames', True, 'WampWebSocketServerFactory'), | |
('maskServerFrames', False, 'WampWebSocketServerFactory'), | |
('perMessageCompressionAccept', | |
<function set_websocket_options.<locals>.<lambda> at 0x00007fc82829b740>, | |
'WampWebSocketServerFactory'), | |
('serveFlashSocketPolicy', False, 'WampWebSocketServerFactory'), | |
('flashSocketPolicy', | |
'<cross-domain-policy>\n' | |
' <allow-access-from domain="*" to-ports="*" />\n' | |
'</cross-domain-policy>\x00', | |
'WampWebSocketServerFactory'), | |
('allowedOrigins', ['*'], 'WampWebSocketServerFactory'), | |
('allowedOriginsPatterns', [re.compile('^.*$')], 'WampWebSocketServerFactory'), | |
('allowNullOrigin', True, 'WampWebSocketServerFactory'), | |
('maxConnections', 0, 'WampWebSocketServerFactory'), | |
('trustXForwardedFor', 0, 'WampWebSocketServerFactory')] |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$ python bug-twisted-subscribe-and-do-nothing.py | |
:0: UserWarning: You do not have a working installation of the service_identity module: 'No module named 'service_identity''. Please install it from <https://pypi.python.org/pypi/service_identity> and make sure all of its dependencies are satisfied. Without the service_identity module, Twisted can perform only rudimentary TLS client hostname verification. Many valid certificate/hostname mappings may be rejected. | |
2019-01-14T23:52:35+1100 Entering re-connect loop | |
2019-01-14T23:52:35+1100 trying transport 0 using connect delay 0 | |
2019-01-14T23:52:35+1100 connecting once using transport type "websocket" over endpoint "tcp" | |
2019-01-14T23:52:35+1100 Starting factory <autobahn.twisted.websocket.WampWebSocketClientFactory object at 0x7f77224e09b0> | |
2019-01-14T23:52:35+1100 | |
[('logOctets', False, 'WampWebSocketClientFactory'), | |
('logFrames', False, 'WampWebSocketClientFactory'), | |
('trackTimings', False, 'WampWebSocketClientFactory'), | |
('utf8validateIncoming', True, 'WampWebSocketClientFactory'), | |
('applyMask', True, 'WampWebSocketClientFactory'), | |
('maxFramePayloadSize', 0, 'WampWebSocketClientFactory'), | |
('maxMessagePayloadSize', 0, 'WampWebSocketClientFactory'), | |
('autoFragmentSize', 0, 'WampWebSocketClientFactory'), | |
('failByDrop', True, 'WampWebSocketClientFactory'), | |
('echoCloseCodeReason', False, 'WampWebSocketClientFactory'), | |
('openHandshakeTimeout', 5, 'WampWebSocketClientFactory'), | |
('closeHandshakeTimeout', 1, 'WampWebSocketClientFactory'), | |
('tcpNoDelay', True, 'WampWebSocketClientFactory'), | |
('autoPingInterval', 0, 'WampWebSocketClientFactory'), | |
('autoPingTimeout', 0, 'WampWebSocketClientFactory'), | |
('autoPingSize', 4, 'WampWebSocketClientFactory'), | |
('version', 18, 'WampWebSocketClientFactory'), | |
('acceptMaskedServerFrames', False, 'WampWebSocketClientFactory'), | |
('maskClientFrames', True, 'WampWebSocketClientFactory'), | |
('serverConnectionDropTimeout', 1, 'WampWebSocketClientFactory'), | |
('perMessageCompressionOffers', [], 'WampWebSocketClientFactory'), | |
('perMessageCompressionAccept', | |
<function WebSocketClientFactory.resetProtocolOptions.<locals>.<lambda> at 0x7f77224ec1e0>, | |
'WampWebSocketClientFactory')] | |
2019-01-14T23:52:35+1100 connection to tcp4:ip.is.hidden:443 established | |
2019-01-14T23:52:35+1100 GET /link HTTP/1.1 | |
User-Agent: AutobahnPython/19.1.1 | |
Host: example.com:443 | |
Upgrade: WebSocket | |
Connection: Upgrade | |
Pragma: no-cache | |
Cache-Control: no-cache | |
Sec-WebSocket-Key: 4D44jxWYouf4FDJ7KcB/iw== | |
Sec-WebSocket-Protocol: wamp.2.cbor,wamp.2.json | |
Sec-WebSocket-Version: 13 | |
2019-01-14T23:52:35+1100 Connection made to tcp4:ip.is.hidden:443 | |
2019-01-14T23:52:35+1100 received HTTP response: | |
b'HTTP/1.1 101 Switching Protocols\r\nServer: nginx\r\nDate: Mon, 14 Jan 2019 12:52:35 GMT\r\nConnection: upgrade\r\nUpgrade: WebSocket\r\nSec-WebSocket-Protocol: wamp.2.cbor\r\nSec-WebSocket-Accept: 0y8ufxARaaQJzewLvjRG2ZwbCG8=\r\nVia: 1.1 google\r\nAlt-Svc: clear\r\n\r\n' | |
2019-01-14T23:52:35+1100 received HTTP status line in opening handshake : HTTP/1.1 101 Switching Protocols | |
2019-01-14T23:52:35+1100 received HTTP headers in opening handshake : {'server': 'nginx', 'date': 'Mon, 14 Jan 2019 12:52:35 GMT', 'connection': 'upgrade', 'upgrade': 'WebSocket', 'sec-websocket-protocol': 'wamp.2.cbor', 'sec-websocket-accept': '0y8ufxARaaQJzewLvjRG2ZwbCG8=', 'via': '1.1 google', 'alt-svc': 'clear'} | |
2019-01-14T23:52:35+1100 openHandshakeTimeoutCall.cancel | |
2019-01-14T23:52:36+1100 Entering on_join | |
2019-01-14T23:52:36+1100 Subscribed | |
2019-01-14T23:52:36+1100 Sleeping | |
2019-01-14T23:52:45+1100 WebSocketProtocol.onPing(payload=<4 bytes>) | |
2019-01-14T23:52:55+1100 WebSocketProtocol.onPing(payload=<4 bytes>) | |
2019-01-14T23:53:05+1100 WebSocketProtocol.onPing(payload=<4 bytes>) | |
2019-01-14T23:53:05+1100 Connection to/from tcp4:ip.is.hidden:443 was lost in a non-clean fashion: Connection to the other side was lost in a non-clean fashion: Connection lost. | |
2019-01-14T23:53:05+1100 _connectionLost: [Failure instance: Traceback (failure with no frames): <class 'twisted.internet.error.ConnectionLost'>: Connection to the other side was lost in a non-clean fashion: Connection lost. | |
] | |
2019-01-14T23:53:05+1100 WAMP-over-WebSocket transport lost: wasClean=False, code=1006, reason="connection was closed uncleanly (peer dropped the TCP connection without previous WebSocket closing handshake)" | |
2019-01-14T23:53:05+1100 session leaving 'wamp.close.transport_lost' | |
2019-01-14T23:53:05+1100 component failed: ApplicationError: ApplicationError(error=<wamp.close.transport_lost>, args=[], kwargs={}, enc_algo=None) | |
2019-01-14T23:53:05+1100 Traceback (most recent call last): | |
Failure: autobahn.wamp.exception.ApplicationError: ApplicationError(error=<wamp.close.transport_lost>, args=[], kwargs={}, enc_algo=None) | |
2019-01-14T23:53:05+1100 wamp.close.transport_lost: | |
2019-01-14T23:53:05+1100 session on_disconnect: was_clean=False | |
2019-01-14T23:53:05+1100 Stopping factory <autobahn.twisted.websocket.WampWebSocketClientFactory object at 0x7f77224e09b0> | |
2019-01-14T23:53:05+1100 Entering re-connect loop | |
2019-01-14T23:53:05+1100 trying transport 0 using connect delay 2.3187428648299617 | |
2019-01-14T23:53:07+1100 connecting once using transport type "websocket" over endpoint "tcp" | |
2019-01-14T23:53:07+1100 Starting factory <autobahn.twisted.websocket.WampWebSocketClientFactory object at 0x7f77224f20b8> | |
2019-01-14T23:53:08+1100 | |
[('logOctets', False, 'WampWebSocketClientFactory'), | |
('logFrames', False, 'WampWebSocketClientFactory'), | |
('trackTimings', False, 'WampWebSocketClientFactory'), | |
('utf8validateIncoming', True, 'WampWebSocketClientFactory'), | |
('applyMask', True, 'WampWebSocketClientFactory'), | |
('maxFramePayloadSize', 0, 'WampWebSocketClientFactory'), | |
('maxMessagePayloadSize', 0, 'WampWebSocketClientFactory'), | |
('autoFragmentSize', 0, 'WampWebSocketClientFactory'), | |
('failByDrop', True, 'WampWebSocketClientFactory'), | |
('echoCloseCodeReason', False, 'WampWebSocketClientFactory'), | |
('openHandshakeTimeout', 5, 'WampWebSocketClientFactory'), | |
('closeHandshakeTimeout', 1, 'WampWebSocketClientFactory'), | |
('tcpNoDelay', True, 'WampWebSocketClientFactory'), | |
('autoPingInterval', 0, 'WampWebSocketClientFactory'), | |
('autoPingTimeout', 0, 'WampWebSocketClientFactory'), | |
('autoPingSize', 4, 'WampWebSocketClientFactory'), | |
('version', 18, 'WampWebSocketClientFactory'), | |
('acceptMaskedServerFrames', False, 'WampWebSocketClientFactory'), | |
('maskClientFrames', True, 'WampWebSocketClientFactory'), | |
('serverConnectionDropTimeout', 1, 'WampWebSocketClientFactory'), | |
('perMessageCompressionOffers', [], 'WampWebSocketClientFactory'), | |
('perMessageCompressionAccept', | |
<function WebSocketClientFactory.resetProtocolOptions.<locals>.<lambda> at 0x7f772140e400>, | |
'WampWebSocketClientFactory')] | |
2019-01-14T23:53:08+1100 connection to tcp4:ip.is.hidden:443 established | |
2019-01-14T23:53:08+1100 GET /link HTTP/1.1 | |
User-Agent: AutobahnPython/19.1.1 | |
Host: example.com:443 | |
Upgrade: WebSocket | |
Connection: Upgrade | |
Pragma: no-cache | |
Cache-Control: no-cache | |
Sec-WebSocket-Key: 2UMgYUlkqE6QtCj7KPbClw== | |
Sec-WebSocket-Protocol: wamp.2.cbor,wamp.2.json | |
Sec-WebSocket-Version: 13 | |
2019-01-14T23:53:08+1100 Connection made to tcp4:ip.is.hidden:443 | |
2019-01-14T23:53:08+1100 received HTTP response: | |
b'HTTP/1.1 101 Switching Protocols\r\nServer: nginx\r\nDate: Mon, 14 Jan 2019 12:53:08 GMT\r\nConnection: upgrade\r\nUpgrade: WebSocket\r\nSec-WebSocket-Protocol: wamp.2.cbor\r\nSec-WebSocket-Accept: yKlxFCQtg+GVkjCV+YQ10X/+F9g=\r\nVia: 1.1 google\r\nAlt-Svc: clear\r\n\r\n' | |
2019-01-14T23:53:08+1100 received HTTP status line in opening handshake : HTTP/1.1 101 Switching Protocols | |
2019-01-14T23:53:08+1100 received HTTP headers in opening handshake : {'server': 'nginx', 'date': 'Mon, 14 Jan 2019 12:53:08 GMT', 'connection': 'upgrade', 'upgrade': 'WebSocket', 'sec-websocket-protocol': 'wamp.2.cbor', 'sec-websocket-accept': 'yKlxFCQtg+GVkjCV+YQ10X/+F9g=', 'via': '1.1 google', 'alt-svc': 'clear'} | |
2019-01-14T23:53:08+1100 openHandshakeTimeoutCall.cancel | |
2019-01-14T23:53:08+1100 Entering on_join | |
2019-01-14T23:53:08+1100 Subscribed | |
2019-01-14T23:53:09+1100 Sleeping | |
2019-01-14T23:53:18+1100 WebSocketProtocol.onPing(payload=<4 bytes>) | |
2019-01-14T23:53:28+1100 WebSocketProtocol.onPing(payload=<4 bytes>) | |
2019-01-14T23:53:36+1100 Publishing | |
2019-01-14T23:53:36+1100 While notifying 'join': Traceback (most recent call last): | |
File "/home/.../lib/python3.7/site-packages/twisted/internet/defer.py", line 654, in _runCallbacks | |
current.result = callback(current.result, *args, **kw) | |
File "/home/.../lib/python3.7/site-packages/twisted/internet/defer.py", line 1116, in _cbDeferred | |
self.callback(self.resultList) | |
File "/home/.../lib/python3.7/site-packages/twisted/internet/defer.py", line 460, in callback | |
self._startRunCallbacks(result) | |
File "/home/.../lib/python3.7/site-packages/twisted/internet/defer.py", line 568, in _startRunCallbacks | |
self._runCallbacks() | |
--- <exception caught here> --- | |
File "/home/.../lib/python3.7/site-packages/twisted/internet/defer.py", line 654, in _runCallbacks | |
current.result = callback(current.result, *args, **kw) | |
File "/home/.../lib/python3.7/site-packages/txaio/tx.py", line 515, in completed | |
value.raiseException() | |
File "/home/.../lib/python3.7/site-packages/twisted/python/failure.py", line 467, in raiseException | |
raise self.value.with_traceback(self.tb) | |
File "/home/.../lib/python3.7/site-packages/twisted/internet/defer.py", line 654, in _runCallbacks | |
current.result = callback(current.result, *args, **kw) | |
File "/home/.../lib/python3.7/site-packages/txaio/tx.py", line 515, in completed | |
value.raiseException() | |
File "/home/.../lib/python3.7/site-packages/twisted/python/failure.py", line 467, in raiseException | |
raise self.value.with_traceback(self.tb) | |
File "/home/.../lib/python3.7/site-packages/twisted/internet/defer.py", line 1418, in _inlineCallbacks | |
result = g.send(result) | |
File "bug-twisted-subscribe-and-do-nothing.py", line 37, in on_join | |
yield session.publish("news", "Fake news", options=options) | |
File "/home/.../lib/python3.7/site-packages/autobahn/wamp/protocol.py", line 1278, in publish | |
raise exception.TransportLost() | |
autobahn.wamp.exception.TransportLost: | |
2019-01-14T23:53:36+1100 Unhandled error in Deferred: | |
2019-01-14T23:53:36+1100 Traceback (most recent call last): | |
File "/home/.../lib/python3.7/site-packages/twisted/internet/defer.py", line 654, in _runCallbacks | |
current.result = callback(current.result, *args, **kw) | |
File "/home/.../lib/python3.7/site-packages/twisted/internet/defer.py", line 1116, in _cbDeferred | |
self.callback(self.resultList) | |
File "/home/.../lib/python3.7/site-packages/twisted/internet/defer.py", line 460, in callback | |
self._startRunCallbacks(result) | |
File "/home/.../lib/python3.7/site-packages/twisted/internet/defer.py", line 568, in _startRunCallbacks | |
self._runCallbacks() | |
--- <exception caught here> --- | |
File "/home/.../lib/python3.7/site-packages/twisted/internet/defer.py", line 654, in _runCallbacks | |
current.result = callback(current.result, *args, **kw) | |
File "/home/.../lib/python3.7/site-packages/txaio/tx.py", line 515, in completed | |
value.raiseException() | |
File "/home/.../lib/python3.7/site-packages/twisted/python/failure.py", line 467, in raiseException | |
raise self.value.with_traceback(self.tb) | |
File "/home/.../lib/python3.7/site-packages/twisted/internet/defer.py", line 1418, in _inlineCallbacks | |
result = g.send(result) | |
File "bug-twisted-subscribe-and-do-nothing.py", line 37, in on_join | |
yield session.publish("news", "Fake news", options=options) | |
File "/home/.../lib/python3.7/site-packages/autobahn/wamp/protocol.py", line 1278, in publish | |
raise exception.TransportLost() | |
autobahn.wamp.exception.TransportLost: | |
2019-01-14T23:53:38+1100 WebSocketProtocol.onPing(payload=<4 bytes>) | |
2019-01-14T23:53:38+1100 Connection to/from tcp4:ip.is.hidden:443 was lost in a non-clean fashion: Connection to the other side was lost in a non-clean fashion: Connection lost. | |
2019-01-14T23:53:38+1100 _connectionLost: [Failure instance: Traceback (failure with no frames): <class 'twisted.internet.error.ConnectionLost'>: Connection to the other side was lost in a non-clean fashion: Connection lost. | |
] | |
2019-01-14T23:53:38+1100 WAMP-over-WebSocket transport lost: wasClean=False, code=1006, reason="connection was closed uncleanly (peer dropped the TCP connection without previous WebSocket closing handshake)" | |
2019-01-14T23:53:38+1100 session leaving 'wamp.close.transport_lost' | |
2019-01-14T23:53:38+1100 component failed: ApplicationError: ApplicationError(error=<wamp.close.transport_lost>, args=[], kwargs={}, enc_algo=None) | |
2019-01-14T23:53:38+1100 Traceback (most recent call last): | |
Failure: autobahn.wamp.exception.ApplicationError: ApplicationError(error=<wamp.close.transport_lost>, args=[], kwargs={}, enc_algo=None) | |
2019-01-14T23:53:38+1100 wamp.close.transport_lost: | |
2019-01-14T23:53:38+1100 session on_disconnect: was_clean=False | |
2019-01-14T23:53:38+1100 Stopping factory <autobahn.twisted.websocket.WampWebSocketClientFactory object at 0x7f77224f20b8> | |
2019-01-14T23:53:38+1100 Entering re-connect loop | |
2019-01-14T23:53:38+1100 trying transport 0 using connect delay 3.0991769490630414 | |
2019-01-14T23:53:41+1100 connecting once using transport type "websocket" over endpoint "tcp" | |
2019-01-14T23:53:41+1100 Starting factory <autobahn.twisted.websocket.WampWebSocketClientFactory object at 0x7f7721418f60> | |
2019-01-14T23:53:41+1100 | |
[('logOctets', False, 'WampWebSocketClientFactory'), | |
('logFrames', False, 'WampWebSocketClientFactory'), | |
('trackTimings', False, 'WampWebSocketClientFactory'), | |
('utf8validateIncoming', True, 'WampWebSocketClientFactory'), | |
('applyMask', True, 'WampWebSocketClientFactory'), | |
('maxFramePayloadSize', 0, 'WampWebSocketClientFactory'), | |
('maxMessagePayloadSize', 0, 'WampWebSocketClientFactory'), | |
('autoFragmentSize', 0, 'WampWebSocketClientFactory'), | |
('failByDrop', True, 'WampWebSocketClientFactory'), | |
('echoCloseCodeReason', False, 'WampWebSocketClientFactory'), | |
('openHandshakeTimeout', 5, 'WampWebSocketClientFactory'), | |
('closeHandshakeTimeout', 1, 'WampWebSocketClientFactory'), | |
('tcpNoDelay', True, 'WampWebSocketClientFactory'), | |
('autoPingInterval', 0, 'WampWebSocketClientFactory'), | |
('autoPingTimeout', 0, 'WampWebSocketClientFactory'), | |
('autoPingSize', 4, 'WampWebSocketClientFactory'), | |
('version', 18, 'WampWebSocketClientFactory'), | |
('acceptMaskedServerFrames', False, 'WampWebSocketClientFactory'), | |
('maskClientFrames', True, 'WampWebSocketClientFactory'), | |
('serverConnectionDropTimeout', 1, 'WampWebSocketClientFactory'), | |
('perMessageCompressionOffers', [], 'WampWebSocketClientFactory'), | |
('perMessageCompressionAccept', | |
<function WebSocketClientFactory.resetProtocolOptions.<locals>.<lambda> at 0x7f77224a5d08>, | |
'WampWebSocketClientFactory')] | |
2019-01-14T23:53:41+1100 connection to tcp4:ip.is.hidden:443 established | |
2019-01-14T23:53:41+1100 GET /link HTTP/1.1 | |
User-Agent: AutobahnPython/19.1.1 | |
Host: example.com:443 | |
Upgrade: WebSocket | |
Connection: Upgrade | |
Pragma: no-cache | |
Cache-Control: no-cache | |
Sec-WebSocket-Key: yuksG/xd3Fvl3Yx8XvqIqQ== | |
Sec-WebSocket-Protocol: wamp.2.cbor,wamp.2.json | |
Sec-WebSocket-Version: 13 | |
2019-01-14T23:53:41+1100 Connection made to tcp4:ip.is.hidden:443 | |
2019-01-14T23:53:41+1100 received HTTP response: | |
b'HTTP/1.1 101 Switching Protocols\r\nServer: nginx\r\nDate: Mon, 14 Jan 2019 12:53:41 GMT\r\nConnection: upgrade\r\nUpgrade: WebSocket\r\nSec-WebSocket-Protocol: wamp.2.cbor\r\nSec-WebSocket-Accept: WI2kE5UD1zaD31Sh5WEqz/EjNiI=\r\nVia: 1.1 google\r\nAlt-Svc: clear\r\n\r\n' | |
2019-01-14T23:53:41+1100 received HTTP status line in opening handshake : HTTP/1.1 101 Switching Protocols | |
2019-01-14T23:53:41+1100 received HTTP headers in opening handshake : {'server': 'nginx', 'date': 'Mon, 14 Jan 2019 12:53:41 GMT', 'connection': 'upgrade', 'upgrade': 'WebSocket', 'sec-websocket-protocol': 'wamp.2.cbor', 'sec-websocket-accept': 'WI2kE5UD1zaD31Sh5WEqz/EjNiI=', 'via': '1.1 google', 'alt-svc': 'clear'} | |
2019-01-14T23:53:41+1100 openHandshakeTimeoutCall.cancel | |
2019-01-14T23:53:42+1100 Entering on_join | |
2019-01-14T23:53:42+1100 Subscribed | |
2019-01-14T23:53:42+1100 Sleeping | |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment