Server IP : 103.53.40.154 / Your IP : 18.117.75.218 Web Server : Apache System : Linux md-in-35.webhostbox.net 4.19.286-203.ELK.el7.x86_64 #1 SMP Wed Jun 14 04:33:55 CDT 2023 x86_64 User : ppcad7no ( 715) PHP Version : 8.2.25 Disable Function : NONE MySQL : OFF | cURL : ON | WGET : ON | Perl : ON | Python : ON Directory (0755) : /usr/share/locale/kab/../lt/../de_CH/../ii/../zgh/../csb/../en_AU/../../dstat/ |
[ Home ] | [ C0mmand ] | [ Upload File ] |
---|
### Author: Dag Wieers <dag$wieers,com> class dstat_plugin(dstat): """ Percentage of remaining battery power as reported by ACPI. """ def __init__(self): self.name = 'battery' self.type = 'p' self.width = 4 self.scale = 34 def check(self): if not os.path.exists('/proc/acpi/battery/'): raise Exception, "No ACPI battery information found." def vars(self): ret = [] for battery in os.listdir('/proc/acpi/battery/'): for line in dopen('/proc/acpi/battery/'+battery+'/state').readlines(): l = line.split() if len(l) < 2: continue if l[0] == 'present:' and l[1] == 'yes': ret.append(battery) ret.sort() return ret def nick(self): return [name.lower() for name in self.vars] def extract(self): for battery in self.vars: for line in dopen('/proc/acpi/battery/'+battery+'/info').readlines(): l = line.split() if len(l) < 4: continue if l[0] == 'last': full = int(l[3]) break for line in dopen('/proc/acpi/battery/'+battery+'/state').readlines(): l = line.split() if len(l) < 3: continue if l[0] == 'remaining': current = int(l[2]) break if current: self.val[battery] = current * 100.0 / full else: self.val[battery] = -1 # vim:ts=4:sw=4:et