summaryrefslogtreecommitdiff
path: root/src/leap/bitmask/core/bitmaskd.tac
blob: 0ab44ff3db3cdd47b31fc1dfd4babd10e709d2dd (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
# Service composition for bitmask-core.
# Run as: twistd -n -y bitmaskd.tac
#

import os

from twisted.application import service
from twisted.logger import ILogObserver
from twisted.logger import FileLogObserver
from twisted.logger import FilteringLogObserver
from twisted.logger import LogLevel
from twisted.logger import LogLevelFilterPredicate
from twisted.logger import formatEventAsClassicLogText as formatEvent

from leap.bitmask.core.service import BitmaskBackend
from leap.bitmask.core.logs import logFileFactory

bb = BitmaskBackend()
application = service.Application("bitmaskd")

# configure logging
log_file =  logFileFactory()
file_observer = FileLogObserver(log_file, formatEvent)
level = LogLevel.debug if os.environ.get('BITMASK_DEBUG') else LogLevel.info
predicate = LogLevelFilterPredicate(defaultLogLevel=level)
observer = FilteringLogObserver(file_observer, [predicate])
application.setComponent(ILogObserver, observer)

bb.setServiceParent(application)