1
1
#! /usr/bin/env python3
2
2
# coding: utf-8
3
3
4
+ import logging
5
+ import sys
4
6
import threading
5
7
import yaml
6
8
@@ -15,6 +17,17 @@ def main():
15
17
config = yaml .load (stream )
16
18
except yaml .YAMLError as exc :
17
19
print (exc )
20
+ numeric_level = getattr (logging , config ['system' ]['logLevel' ].upper (), None )
21
+ if not isinstance (numeric_level , int ):
22
+ raise ValueError ('Invalid log level: %s' % config ['system' ]['logLevel' ])
23
+ logging .basicConfig (
24
+ level = numeric_level ,
25
+ format = '[%(asctime)s] %(message)s' ,
26
+ handlers = [
27
+ logging .FileHandler ("system.log" ),
28
+ logging .StreamHandler ()
29
+ ]
30
+ )
18
31
if config ['ts3server' ]['enabled' ]:
19
32
ts3_server_args = [
20
33
config ['ts3server' ]['relayAddress' ],
@@ -25,7 +38,7 @@ def main():
25
38
ts3_server = Udp (* ts3_server_args [:4 ])
26
39
t1 = threading .Thread (target = ts3_server .relay )
27
40
t1 .start ()
28
- print ( " Voice: {0}:{1} <-> {2}:{3}" .format (* ts3_server_args ))
41
+ logging . info ( ' Voice: {0}:{1} <-> {2}:{3}' .format (* ts3_server_args ))
29
42
if config ['ts3FileTransfer' ]['enabled' ]:
30
43
file_transfer_args = [
31
44
config ['ts3FileTransfer' ]['relayAddress' ],
@@ -36,7 +49,7 @@ def main():
36
49
file_transfer = Tcp (* file_transfer_args [:4 ])
37
50
t2 = threading .Thread (target = file_transfer .relay )
38
51
t2 .start ()
39
- print ( " FileTransfer: {0}:{1} <-> {2}:{3}" .format (* file_transfer_args ))
52
+ logging . info ( ' FileTransfer: {0}:{1} <-> {2}:{3}' .format (* file_transfer_args ))
40
53
if config ['ts3ServerQuery' ]['enabled' ]:
41
54
server_query_args = [
42
55
config ['ts3ServerQuery' ]['relayAddress' ],
@@ -47,7 +60,7 @@ def main():
47
60
server_query = Tcp (* server_query_args [:4 ])
48
61
t3 = threading .Thread (target = server_query .relay )
49
62
t3 .start ()
50
- print ( " ServerQuery: {0}:{1} <-> {2}:{3}" .format (* server_query_args ))
63
+ logging . info ( ' ServerQuery: {0}:{1} <-> {2}:{3}' .format (* server_query_args ))
51
64
except KeyboardInterrupt :
52
65
exit (0 )
53
66
0 commit comments