HCE Project Python language Distributed Tasks Manager Application, Distributed Crawler Application and client API bindings.  2.0.0-chaika
Hierarchical Cluster Engine Python language binding
app.Metrics.Metrics Class Reference
Inheritance diagram for app.Metrics.Metrics:
Collaboration diagram for app.Metrics.Metrics:

Static Public Member Functions

def addMetricClassMetrics (metricClass, names)
 
def fillMetricModulesList (additionFiller=None)
 
def metricsPrecalculate (requestMetrics, result)
 
def sortElementsByMetric (elements, metricName)
 
def selectElementsByMetric (elements, metricName, metricLimitMax, metricLimitMin)
 

Static Public Attributes

dictionary AVAILABLE_METRICS = {}
 

Detailed Description

Definition at line 22 of file Metrics.py.

Member Function Documentation

◆ addMetricClassMetrics()

def app.Metrics.Metrics.addMetricClassMetrics (   metricClass,
  names 
)
static

Definition at line 32 of file Metrics.py.

32  def addMetricClassMetrics(metricClass, names):
33  metricInstance = metricClass(names)
34  for name in metricInstance.names:
35  Metrics.AVAILABLE_METRICS[name] = metricInstance
36 
37 

◆ fillMetricModulesList()

def app.Metrics.Metrics.fillMetricModulesList (   additionFiller = None)
static

Definition at line 42 of file Metrics.py.

42  def fillMetricModulesList(additionFiller=None):
43  Metrics.addMetricClassMetrics(MetricTagsCount, ["TAGS_NUMBER", "TAGS_NUMBER_PERCENT"])
44  Metrics.addMetricClassMetrics(MetricWCount, ["WORDS_NUMBER", "WORDS_NUMBER_PERCENT"])
45  Metrics.addMetricClassMetrics(MetricContentSize, ["CONTENT_SIZE", "CONTENT_SIZE_PERCENT"])
46  if additionFiller is not None:
47  additionFiller(Metrics.AVAILABLE_METRICS)
48 
49 

◆ metricsPrecalculate()

def app.Metrics.Metrics.metricsPrecalculate (   requestMetrics,
  result 
)
static

Definition at line 55 of file Metrics.py.

55  def metricsPrecalculate(requestMetrics, result):
56  for key in requestMetrics:
57  if key in Metrics.AVAILABLE_METRICS:
58  try:
59  requestMetrics[key] = Metrics.AVAILABLE_METRICS[key].precalculate(result, key)
60  except Exception as excp:
61  logger.debug(">>> Somthing wrong in metric precalculating, err = " + str(excp) + " key = " + str(key))
62  else:
63  logger.debug(">>> metricsPrecalculate. No request metric in available metrics dict, metric is = " + str(key))
64 
65 

◆ selectElementsByMetric()

def app.Metrics.Metrics.selectElementsByMetric (   elements,
  metricName,
  metricLimitMax,
  metricLimitMin 
)
static

Definition at line 90 of file Metrics.py.

90  def selectElementsByMetric(elements, metricName, metricLimitMax, metricLimitMin):
91  ret = elements
92  if metricName in Metrics.AVAILABLE_METRICS:
93  ret = Metrics.AVAILABLE_METRICS[metricName].selectElementsByMetric(elements, metricName, metricLimitMax,
94  metricLimitMin)
95  else:
96  logger.debug(">>> selectElementsByMetric. No request metric in available metrics dict, metric is = " + metricName)
97  return ret
98 

◆ sortElementsByMetric()

def app.Metrics.Metrics.sortElementsByMetric (   elements,
  metricName 
)
static

Definition at line 73 of file Metrics.py.

73  def sortElementsByMetric(elements, metricName):
74  ret = elements
75  if metricName in Metrics.AVAILABLE_METRICS:
76  ret = Metrics.AVAILABLE_METRICS[metricName].sortElementsByMetric(elements, metricName)
77  else:
78  logger.debug(">>> sortElementsByMetric. No request metric in available metrics dict, metric is = " + metricName)
79  return ret
80 
81 

Member Data Documentation

◆ AVAILABLE_METRICS

dictionary app.Metrics.Metrics.AVAILABLE_METRICS = {}
static

Definition at line 24 of file Metrics.py.


The documentation for this class was generated from the following file: