@@ -18,7 +18,7 @@ class BackChannelClient: # pylint: disable=too-few-public-methods
1818 CONFIG_PATH = os .path .join (CONFIG_FOLDER_PATH , "config.ini" )
1919 DEFAULT_CONFIG = {
2020 "connection" : {
21- "server_address" : "localhost" ,
21+ "server_address" : "http:// localhost" ,
2222 "ssh_username" : "root" ,
2323 "ssh_port" : "22" ,
2424 "period_time_sec" : "30" ,
@@ -37,7 +37,7 @@ def _init_logger(self):
3737 logging .Formatter ("back-channel-client %(name)s: %(levelname)s %(message)s" )
3838 )
3939 logger = logging .getLogger ("back-channel-client" )
40- # logger.addHandler(syslog)
40+ logger .addHandler (syslog )
4141 logger .setLevel (logging .INFO )
4242 return logger
4343
@@ -69,7 +69,7 @@ def _server_hostname(self):
6969
7070 def _get_order (self ):
7171 request = requests .get (
72- url = f"{ self ._server_address } /api/order" ,
72+ url = f"{ self ._server_address } /api/v1/client/ order" ,
7373 headers = {
7474 "name" : self ._config ["connection" ]["client_name" ],
7575 "username" : self ._config ["connection" ]["ssh_username" ],
@@ -80,17 +80,16 @@ def _get_order(self):
8080
8181 def _send_metrics (self ):
8282 metrics = self ._collect_metrics ()
83- url = f"{ self ._server_address } /api/metric"
83+ url = f"{ self ._server_address } /api/v1/client/ metric"
8484 client_name = self ._config ["connection" ]["client_name" ]
8585 data = {
86- "name" : client_name ,
87- "uptime" : metrics ["uptime_hous" ],
86+ "uptime" : metrics ["uptime_hours" ],
8887 "cpu_usage" : metrics ["cpu_percent" ],
8988 "memory_usage" : metrics ["mem_percent" ],
9089 "disk_usage" : metrics ["disk_usage" ],
9190 "temperature" : metrics ["temperature" ],
9291 }
93- headers = {"Content-type" : "application/json" }
92+ headers = {"Content-type" : "application/json" , "name" : client_name }
9493 requests .put (url , data = json .dumps (data ), headers = headers , timeout = 5 )
9594
9695 def _collect_metrics (self ):
@@ -101,7 +100,7 @@ def _collect_metrics(self):
101100 else "/"
102101 )
103102 return {
104- "uptime_hous " : int (uptime_sec / 3600 ),
103+ "uptime_hours " : int (uptime_sec ),
105104 "mem_percent" : int (psutil .virtual_memory ().percent ),
106105 "cpu_percent" : self ._get_cpu_avarage_load (),
107106 "disk_usage" : int (psutil .disk_usage (disk_path ).percent ),
@@ -132,13 +131,14 @@ def _get_cpu_avarage_load():
132131 return - 1
133132
134133 def run (self ):
135- self ._logger .info ("Starting rpi-remote client..." )
134+ self ._logger .info ("Starting back channel client..." )
136135 while True :
137136 try :
138- if data := self ._get_order ():
137+ data = self ._get_order ()
138+ if port := data .get ("port" ):
139139 forwarder = ClientForwarder (
140140 host = self ._server_hostname ,
141- port = data [ " port" ] ,
141+ port = port ,
142142 local_port = self ._config ["connection" ]["ssh_port" ],
143143 )
144144 forwarder .start ()
@@ -155,3 +155,7 @@ def run(self):
155155def main ():
156156 client = BackChannelClient ()
157157 client .run ()
158+
159+
160+ if __name__ == "__main__" :
161+ main ()
0 commit comments