zbxepics.casender

PriorityPeekQueue

class zbxepics.casender.peekqueue.PriorityPeekQueue(maxsize=0)

Bases: Queue.PriorityQueue

PriorityQueue class with peek method

peek()

Return the first data.

Returns:the head of this queue. If the queue is empty, None is returned.
Return type:obj

Item Factory

class zbxepics.casender.item.factory.IntervalItemFactory

Factory for creating interval item

DEFAULT_FUNCTION = 'last'
classmethod create_item(host, pvname, interval=30.0, func='last', item_key=None)

Create interval item

Parameters:
  • host (str) – host name of item
  • pvname (str) – pv name to monitor
  • interval (float) – interval in senconds to send (default is 30)
  • func (str) – function to apply item buffer (default is ‘last’)
  • item_key (str) – item key of item (default is None)
Returns:

created item

Return type:

item.IntervalItem

classmethod list_of_functions()

get a list of functions

Returns:list of functions
Return type:list
class zbxepics.casender.item.factory.MonitorItemFactory

Factory for creating monitor item

classmethod create_item(host, pvname, item_key=None)

Create monitor item

Returns:created item
Return type:item.MonitorItem

Monitor item

class zbxepics.casender.item.monitoritem.MonitorItem(host, pvname, item_key=None)

Bases: object

a class for monitor item

host

host name of item

Type:str
pvname

pv name to monitor

Type:str
pv

pv object to be monitored

Type:epics.PV
item_key

item key of item

Type:str
__metric_q

queue of ZabbixMetric

Type:queue.Queue
get_metrics()

Get metrics

Returns:All metrics in queue
Return type:list of pyzabbix.ZabbixMetric

Interval Item

class zbxepics.casender.item.intervalitem.IntervalItem(host, pvname, interval=30.0, item_key=None)

Bases: object

a class for interval item

host

host name of item

Type:str
pvname

pv name to monitor

Type:str
pv

pv object to be monitored

Type:epics.PV
item_key

item key of item

Type:str
interval

interval in senconds to send

Type:float
value

value to be got

Type:obj
__last_value

last got value

Type:obj
_lock

lock for value

Type:threading.Lock()
DEFAULT_INTERVAL = 30.0
get_metrics()

Get Zabbix Metircs

Returns:list of zabbix metric
Return type:list of pyzabbix.ZabbixMetric
class zbxepics.casender.item.intervalitem.IntervalItemAvg(host, pvname, interval=30.0, item_key=None)

Bases: zbxepics.casender.item.intervalitem.IntervalItem

a class for average interval item

sum

sum of values

Type:int or float
count

counts of value change

Type:int
class zbxepics.casender.item.intervalitem.IntervalItemLast(host, pvname, interval=30.0, item_key=None)

Bases: zbxepics.casender.item.intervalitem.IntervalItem

a class for last interval item

class zbxepics.casender.item.intervalitem.IntervalItemMax(host, pvname, interval=30.0, item_key=None)

Bases: zbxepics.casender.item.intervalitem.IntervalItem

a class for max interval item

class zbxepics.casender.item.intervalitem.IntervalItemMin(host, pvname, interval=30.0, item_key=None)

Bases: zbxepics.casender.item.intervalitem.IntervalItem

a class for min interval item