|
12 | 12 | #
|
13 | 13 | class DockerInterfaces():
|
14 | 14 | def __init__(self, ifaceinfo=''):
|
15 |
| - self.__dockerClient = docker.from_env() |
| 15 | + try: |
| 16 | + self.__dockerClient = docker.from_env() |
| 17 | + except ConnectionError as ConnError: |
| 18 | + print('Connexion error' + ConnError) |
| 19 | + raise ValueError('Docker is not ruuning.') |
16 | 20 | # manage the ifaceinfo is provided or not
|
17 | 21 | if ifaceinfo == '':
|
18 | 22 | self.__ifaceinfoprovided = False
|
@@ -187,12 +191,15 @@ def __containers_collect_data(self):
|
187 | 191 | _iflink = _container.exec_run('cat /sys/class/net/' + iface + '/iflink')
|
188 | 192 | _ifaddr = _container.exec_run('cat /sys/class/net/' + iface + '/address')
|
189 | 193 | _ifoperstate = _container.exec_run('cat /sys/class/net/' + iface + '/operstate')
|
| 194 | + # get interface statistics :) |
| 195 | + #_statistics = _container.exec_run('echo "{"; for i in $(ls /sys/class/net/' + iface + '/statistics); do echo "\"$i\": $(cat $i), "; done; echo "}"') |
190 | 196 | _containersinfos[_container.short_id][iface] = {
|
191 |
| - 'name' : iface, |
192 |
| - 'ifindex' : self.__convert_value(_ifindex.output.decode()) if _ifindex.exit_code == 0 else -1, |
193 |
| - 'iflink' : self.__convert_value(_iflink.output.decode()) if _iflink.exit_code == 0 else -1, |
194 |
| - 'address' : self.__convert_value(_ifaddr.output.decode().replace('\n', '')) if _ifaddr.exit_code == 0 else 'unknown', |
195 |
| - 'operstate' : self.__convert_value(_ifoperstate.output.decode().replace('\n', '')) if _ifaddr.exit_code == 0 else 'unknown' |
| 197 | + 'name' : iface, |
| 198 | + 'ifindex' : self.__convert_value(_ifindex.output.decode()) if _ifindex.exit_code == 0 else -1, |
| 199 | + 'iflink' : self.__convert_value(_iflink.output.decode()) if _iflink.exit_code == 0 else -1, |
| 200 | + 'address' : self.__convert_value(_ifaddr.output.decode().replace('\n', '')) if _ifaddr.exit_code == 0 else 'unknown', |
| 201 | + 'operstate' : self.__convert_value(_ifoperstate.output.decode().replace('\n', '')) if _ifaddr.exit_code == 0 else 'unknown' |
| 202 | + #'statistics' : _statistics |
196 | 203 | }
|
197 | 204 | return _containersinfos
|
198 | 205 |
|
|
0 commit comments