msg += ' ' + d + trunc
log.info('{dflag} {msgcore}', dflag=dflag, msgcore=msg)
+def logevent_is_boringtwisted(event):
+ try:
+ if event.get('log_level') != LogLevel.info:
+ return False
+ dflag = event.get('dflag')
+ if dflag is False : return False
+ if dflag in debug_set: return False
+ if dflag is None and DBG.TWISTED in debug_set: return False
+ return True
+ except Exception:
+ print(traceback.format_exc(), file=org_stderr)
+ return False
+
@implementer(twisted.logger.ILogFilterPredicate)
class LogNotBoringTwisted:
def __call__(self, event):
- yes = twisted.logger.PredicateResult.yes
- no = twisted.logger.PredicateResult.no
- try:
- if event.get('log_level') != LogLevel.info:
- return yes
- dflag = event.get('dflag')
- if dflag is False : return yes
- if dflag in debug_set: return yes
- if dflag is None and DBG.TWISTED in debug_set: return yes
- return no
- except Exception:
- print(traceback.format_exc(), file=org_stderr)
- return yes
+ return (
+ twisted.logger.PredicateResult.no
+ if logevent_is_boringtwisted(event) else
+ twisted.logger.PredicateResult.yes
+ )
#---------- default config ----------
# relating to virtual network
mtu = 1500
-[SERVER]
-server = SERVER
# addrs = 127.0.0.1 ::1
# url
self._endpointfactory = twisted.internet.endpoints.TCP6ServerEndpoint
self._inurl = b'[%s]'
def make_endpoint(self):
- return self._endpointfactory(reactor, self.port, self.addr)
+ return self._endpointfactory(reactor, self.port,
+ interface= '%s' % self.addr)
def url(self):
url = b'http://' + (self._inurl % str(self.addr).encode('ascii'))
if self.port != 80: url += b':%d' % self.port
url += b'/'
return url
+ def __repr__(self):
+ return 'ServerAddr'+repr((self.port,self.addr))
c.port = cfg.getint(ss,'port')
c.saddrs = [ ]
#---------- startup ----------
+def log_debug_config(m):
+ if not DBG.CONFIG in debug_set: return
+ print('DBG.CONFIG:', m)
+
def common_startup(process_cfg):
# calls process_cfg(putative_clients, putative_servers)
def readconfig(pathname, mandatory=True):
def log(m, p=pathname):
if not DBG.CONFIG in debug_set: return
- print('DBG.CONFIG: %s: %s' % (m, pathname))
+ log_debug_config('%s: %s' % (m, pathname))
try:
files = os.listdir(pathname)
log_debug(DBG.INIT, 'entering reactor')
if not _crashing: reactor.run()
print('ENDED', file=sys.stderr)
+ sys.exit(16)