Sindbad~EG File Manager
3
�uGh� � @ s8 d dl Z d dlZG dd� de j�Zedkr4e� j� dS )� Nc % @ s� e Zd ZdZ dddddgZddd d
ddd
ddddddddddddddddddd d!d"d#d$d%d&d'd(d)d*d+g%Zd,d-d.d/d0d1d2d3d4d5d6d7d8d9d:d;d<d=d>d?d@dAdBgZddddddd$gZdCdD� ZdEdF� ZdGdH� Z dIS )J�Plugin�unboundz.avgz.medianz.nowz.upz.elapsedznum.answer.bogusznum.answer.rcodeznum.answer.securez
num.cachehitsz
num.cachemissznum.dnscrypt.certznum.dnscrypt.cleartextznum.dnscrypt.cryptedznum.dnscrypt.malformedznum.prefetchznum.queriesznum.queries_ip_ratelimitedznum.query.aggressiveznum.query.authzone.downznum.query.authzone.upznum.query.classznum.query.dnscrypt.replayz*num.query.dnscrypt.shared_secret.cachemissznum.query.ednsznum.query.flagsznum.query.ipv6znum.query.opcodeznum.query.ratelimitedznum.query.subnetznum.query.subnet_cachez
num.query.tcpznum.query.tcpoutz
num.query.tlsznum.query.tls.resumeznum.query.typeznum.recursiverepliesznum.rrset.bogusznum.zero_ttlzrequestlist.exceededzrequestlist.overwrittenzunwanted.querieszunwanted.replieszdnscrypt_nonce.cache.countz"dnscrypt_shared_secret.cache.countzinfra.cache.countzkey.cache.countzmem.cache.dnscrypt_noncez mem.cache.dnscrypt_shared_secretzmem.cache.messagezmem.cache.rrsetzmem.mod.iteratorzmem.mod.validatorzmem.streamwaitzmsg.cache.countzrecursion.time.avgzrecursion.time.medianzrequestlist.avgzrequestlist.current.allzrequestlist.current.userzrequestlist.maxzrrset.cache.countZtcpusageztime.elapsedztime.nowztime.upc C sR d}yt j|t jdd�}W n2 t jk
rL } zdj|||j�}d S d }~X nX |S )Nz$sudo /usr/sbin/unbound-control statsT)�stderr�shellzERROR CALLING {0}: {1} {2})�
subprocess�check_output�STDOUT�CalledProcessError�format�output)�self�cmdr �eZ error_msg� r �A/root/tmp/pip-build-gzoz1_uw/agent360/agent360/plugins/unbound.py� get_statsZ s zPlugin.get_statsc C sV dd� |j � D �}x>|j� D ]2\}}|jt| j��rBt|�||<