def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): for row in rows: self.total_size_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), name=row[NAME]) \ .set(row[TOTAL]) self.free_space_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), name=row[NAME]) \ .set(row[FREE])
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): for row in rows: self.time_remaining_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), sid=row[SID], context=row[CONTEXT]) \ .set(row[TIME_REMAINING]) self.sofar_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), sid=row[SID], context=row[CONTEXT]) \ .set(row[SOFAR]) self.total_work_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), sid=row[SID], context=row[CONTEXT]) \ .set(row[TOTALWORK])
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): for row in rows: if row[PERCENT_SPACE_USED] is not None: self.percent_space_used_metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(row[PERCENT_SPACE_USED]) if row[PERCENT_SPACE_RECLAIMABLE] is not None: self.percent_space_reclaimable_metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(row[PERCENT_SPACE_RECLAIMABLE])
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): for row in rows: self.total_log_size_in_bytes_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), database=row[DATABASE_NAME]) \ .set(row[TOTAL_LOG_SIZE]) self.used_log_space_in_bytes_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), database=row[DATABASE_NAME]) \ .set(row[USED_LOG_SPACE]) self.used_log_space_in_percentage_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), database=row[DATABASE_NAME]) \ .set(row[USED_LOG_SPACE_PERCENTAGE])
def collect(self, app): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): if db_util.is_port_open(): self.metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(1) LOGGER.info("MsSQLDB is UP") else: self.metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(0) LOGGER.info("MsSQLDB is DOWN")
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): self.metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(next(rows)[UPTIME])
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): for row in rows: self.metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), sid=row[SID], client_info=row[CLIENT_INFO], sequence=row[SEQUENCE], event=self.cleanName(row[EVENT]), state=row[STATE]) \ .set(row[WAITING_TIME])
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): for row in rows: self.metric \ .labels(server=db_util.get_server(), port=db_util.get_port(),status=row[SESSIONS_STATUS], type=row[SESSIONS_TYPE]) \ .set(row[SESSIONS_COUNT])
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): for row in rows: self.current_utilization_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), resource_name=row[NAME]) \ .set(row[CURRENT_UTILIZATION]) # we also do have UNLIMITED values, but we're ignore them try: floatValue = float(row[LIMIT_VALUE]) self.limit_value_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), resource_name=row[NAME]) \ .set(floatValue) except ValueError: pass
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): for row in rows: self.metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), database=row[DATABASE_NAME]) \ .set(row[VALUE])
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): row = next(rows) self.count_metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(row[COUNT]) self.memory_utilization_percentage_metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(row[PERCENTAGE]) self.physical_memory_in_use_metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(row[IN_USE]) self.virtual_address_space_committed_metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(row[SPACE_COMMITTED])
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): for row in rows: self.metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), type=self.cleanName(row[METRIC_NAME])) \ .set(row[VALUE])
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): for row in rows: if row[ELAPSED_SECONDS] is not None: self.metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), session_key=row[SESSION_KEY], input_type=row[INPUT_TYPE], status=row[STATUS]) \ .set(row[ELAPSED_SECONDS]) if row[INPUT_BYTES] is not None: self.input_bytes_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), session_key=row[SESSION_KEY], input_type=row[INPUT_TYPE], status=row[STATUS]) \ .set(row[INPUT_BYTES]) if row[OUTPUT_BYTES] is not None: self.output_bytes_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), session_key=row[SESSION_KEY], input_type=row[INPUT_TYPE], status=row[STATUS]) \ .set(row[OUTPUT_BYTES])
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): row = next(rows) self.total_mem_metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(row[TOTAL_MEM]) self.available_mem_metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(row[AVAILABLE_MEM]) self.total_page_metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(row[TOTAL_PAGE]) self.available_page_metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(row[AVAILABLE_PAGE])
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): row = next(rows) self.total_log_size_in_bytes_metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(row[TOTAL_LOG_SIZE]) self.used_log_space_in_bytes_metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(row[USED_LOG_SPACE]) self.used_log_space_in_percentage_metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(row[USED_LOG_SPACE_PERCENTAGE]) self.log_space_in_bytes_since_last_backup_metric \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(row[USED_LOG_SPACE_SINCE_START])
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): for row in rows: self.curr_bytes_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), tablespace=row[TABLESPACE]) \ .set(row[CURR_BYTES]) self.used_bytes_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), tablespace=row[TABLESPACE]) \ .set(row[USED_BYTES]) self.max_bytes_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), tablespace=row[TABLESPACE], autoextensible=row[AUTOEXTENSIBLE]) \ .set(row[MAX_BYTES]) self.free_bytes_metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), tablespace=row[TABLESPACE]) \ .set(row[FREE_BYTES])
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): for row in rows: self.metric_total \ .labels(server=db_util.get_server(), port=db_util.get_port(), database=row[NAME]) \ .set(row[STALL]) self._set_metric(row, READ) self._set_metric(row, WRITE) self._set_metric(row, QUEUED_READ) self._set_metric(row, QUEUED_WRITE)
def collect(self, app, rows): """ Collect from the query result :param rows: query result :return: """ with app.app_context(): for row in rows: if self.count == 0: self.__dict__[PREFIX + self.cleanName(row[NAME])] = Gauge( PREFIX + self.cleanName(row[NAME]), 'Generic counter metric from v$sysstat view in Oracle.', labelnames=['server', 'port'], registry=self.registry) self.__dict__[PREFIX + self.cleanName(row[NAME])] \ .labels(server=db_util.get_server(), port=db_util.get_port()) \ .set(row[VALUE]) self.count = 1
def _set_metric(self, row, stall_type): self.metric \ .labels(server=db_util.get_server(), port=db_util.get_port(), database=row[NAME], type=stall_type) \ .set(row[stall_type])