Lire l'état de l'appareil¶
Nous fournissons des fonctionnalités pour lire les informations de l'appareil. Celles-ci permettent d'obtenir l'état de fonctionnement de l'appareil, y compris des informations en temps réel sur le disque, la batterie, le CPU, la mémoire, le réseau, etc., vous donnant ainsi un aperçu détaillé de l'état actuel de l'appareil.
Obtenir une instance de Status¶
Avant de commencer, vous devez d'abord obtenir une instance de Status pour pouvoir effectuer les opérations suivantes. Vous pouvez utiliser l'appel suivant pour obtenir une instance permettant de lire l'état de l'appareil.
status = d.stub("Status")
Obtenir le temps de démarrage¶
Vous pouvez obtenir le temps de démarrage de l'appareil actuel en utilisant l'appel suivant.
status.get_boot_time()
>>> status.get_boot_time()
1234567890
Obtenir l'utilisation du disque¶
Vous pouvez obtenir l'utilisation du disque pour un répertoire de montage spécifique en utilisant l'appel suivant.
status.get_disk_usage(mountpoint="/data")
>>> status.get_disk_usage(mountpoint="/data")
disk_total: 117153181696
disk_used: 8111099904
disk_free: 108907864064
disk_percent: 6.900000095367432
>>> result = status.get_disk_usage(mountpoint="/data")
>>> print (result.disk_free)
108907864064
Obtenir les informations de la batterie¶
Vous pouvez obtenir des informations telles que le niveau de la batterie et la température de l'appareil actuel en utilisant l'appel suivant.
status.get_battery_info()
>>> status.get_battery_info()
batt_charging: true
batt_percent: 100
batt_temperature: 26.899999618530273
>>> result = status.get_battery_info()
>>> print (result.batt_charging)
True
Obtenir l'utilisation du CPU¶
Vous pouvez obtenir des informations sur le CPU et son utilisation pour l'appareil actuel en utilisant l'appel suivant.
status.get_cpu_info()
>>> status.get_cpu_info()
cpu_percent: 20.799999237060547
cpu_count: 8
cpu_freq_current: 823.2000122070312
cpu_freq_max: 1929.5999755859375
cpu_freq_min: 614.4000244140625
cpu_times_user: 13.699999809265137
cpu_times_system: 5.800000190734863
cpu_times_idle: 79.80000305175781
>>> result = status.get_cpu_info()
>>> print (result.cpu_percent)
20.799999237060547
Obtenir les E/S disque¶
Vous pouvez obtenir les informations globales sur les entrées/sorties disque de l'appareil actuel en utilisant l'appel suivant.
status.get_overall_disk_io_info()
>>> status.get_overall_disk_io_info()
disk_io_read_bytes: 11569016832
disk_io_read_count: 917667
disk_io_write_bytes: 6973407232
disk_io_write_count: 909946
disk_io_read_time: 364713
disk_io_write_time: 268013
disk_io_busy_time: 152621
>>> result = status.get_overall_disk_io_info()
>>> print (result.disk_io_write_bytes)
6973407232
Obtenir les E/S disque (userdata)¶
Vous pouvez obtenir les informations sur les entrées/sorties du disque userdata de l'appareil actuel en utilisant l'appel suivant.
status.get_userdata_disk_io_info()
>>> status.get_userdata_disk_io_info()
disk_io_read_bytes: 2899529728
disk_io_read_count: 115970
disk_io_write_bytes: 1815506944
disk_io_write_count: 45254
disk_io_read_time: 152239
disk_io_write_time: 120825
disk_io_busy_time: 49127
>>> result = status.get_userdata_disk_io_info()
>>> print (result.disk_io_read_bytes)
2899529728
Obtenir les E/S réseau¶
Vous pouvez obtenir les informations globales sur les entrées/sorties réseau de l'appareil actuel en utilisant l'appel suivant.
status.get_overall_net_io_info()
>>> status.get_overall_net_io_info()
net_io_bytes_sent: 65296119
net_io_packets_sent: 78793
net_io_bytes_recv: 60046396
net_io_packets_recv: 80745
>>> result = status.get_overall_net_io_info()
>>> print (result.net_io_bytes_recv)
60046396
Obtenir les E/S réseau (interface spécifique)¶
Vous pouvez obtenir les informations sur les entrées/sorties de données pour une interface réseau spécifique de l'appareil actuel en utilisant l'appel suivant.
status.get_net_io_info("wlan0")
>>> status.get_net_io_info("wlan0")
net_io_bytes_sent: 36896321
net_io_packets_sent: 59869
net_io_bytes_recv: 58846862
net_io_packets_recv: 66759
>>> result = status.get_net_io_info("wlan0")
>>> print (result.net_io_bytes_recv)
58846862
Obtenir l'utilisation de la mémoire¶
Vous pouvez obtenir les informations sur l'utilisation de la mémoire de l'appareil actuel en utilisant l'appel suivant.
status.get_mem_info()
>>> status.get_mem_info()
mem_total: 7823970304
mem_available: 3208761344
mem_percent: 59.0
mem_used: 4327931904
mem_free: 298639360
mem_active: 3535876096
mem_inactive: 1634873344
mem_buffers: 4243456
mem_cached: 3193155584
mem_shared: 34979840
mem_slab: 426651648
>>> result = status.get_mem_info()
>>> print (result.mem_total)
7823970304