def __init__(self, **kwargs): super(SystemObject, self).__init__(**kwargs) self.uuid = self.data["uuid"] self.hostname = self.data["hostname"] meta_collector_class = SystemCommonMetaCollector if host.os_name() == "linux" and host.linux_name() in ("centos",): meta_collector_class = SystemCentosMetaCollector self.collectors = [ meta_collector_class(object=self, interval=self.intervals["meta"]), SystemMetricsCollector(object=self, interval=self.intervals["metrics"]), ]
def __init__(self, **kwargs): super(SystemObject, self).__init__(**kwargs) self.uuid = self.data['uuid'] self.hostname = self.data['hostname'] meta_collector_class = SystemCommonMetaCollector if host.os_name() == 'linux' and host.linux_name() in ('centos',): meta_collector_class = SystemCentosMetaCollector self.collectors = [ meta_collector_class(object=self, interval=self.intervals['meta']), SystemMetricsCollector(object=self, interval=self.intervals['metrics']) ]
def __init__(self, **kwargs): super(NginxObject, self).__init__(**kwargs) self.local_id = self.data['local_id'] self.pid = self.data['pid'] self.version = self.data['version'] self.workers = self.data['workers'] self.prefix = self.data['prefix'] self.bin_path = self.data['bin_path'] self.conf_path = self.data['conf_path'] default_config = context.app_config['containers'][self.type] self.upload_config = self.data.get('upload_config') or default_config.get('upload_config', False) self.run_config_test = self.data.get('run_test') or default_config.get('run_test', False) self.upload_ssl = self.data.get('upload_ssl') or default_config.get('upload_ssl', False) self.filters = self.data.get('filters') or [] self.config = NginxConfig(self.conf_path, prefix=self.prefix) self.config.full_parse() self.plus_status_external_url, self.plus_status_internal_url = self.get_alive_plus_status_urls() self.plus_status_enabled = True if (self.plus_status_external_url or self.plus_status_internal_url) else False self.stub_status_url = self.get_alive_stub_status_url() self.stub_status_enabled = True if self.stub_status_url else False self.processes = [] meta_collector_class = NginxCommonMetaCollector if host.os_name() == 'linux': if host.linux_name() in ('ubuntu', 'debian'): meta_collector_class = NginxDebianMetaCollector elif host.linux_name() in ('centos',): meta_collector_class = NginxCentosMetaCollector self.collectors = [ meta_collector_class( object=self, interval=self.intervals['meta'] ), NginxMetricsCollector( object=self, interval=self.intervals['metrics'] ), NginxConfigCollector( object=self, interval=self.intervals['configs'], ) ] # access logs for log_filename, format_name in self.config.access_logs.iteritems(): log_format = self.config.log_formats.get(format_name) try: self.collectors.append( NginxAccessLogsCollector( object=self, interval=self.intervals['logs'], filename=log_filename, log_format=log_format, ) ) # Send access log discovery event. self.eventd.event(level=INFO, message='nginx access log %s found' % log_filename) except IOError as e: exception_name = e.__class__.__name__ context.log.error( 'failed to start reading log %s due to %s (maybe has no rights?)' % (log_filename, exception_name) ) context.log.debug('additional info:', exc_info=True) # error logs for log_filename, log_level in self.config.error_logs.iteritems(): try: self.collectors.append( NginxErrorLogsCollector( object=self, interval=self.intervals['logs'], filename=log_filename, level=log_level ) ) # Send error log discovery event. self.eventd.event(level=INFO, message='nginx error log %s found' % log_filename) except IOError as e: exception_name = e.__class__.__name__ context.log.error( 'failed to start reading log %s due to %s (maybe has no rights?)' % (log_filename, exception_name) ) context.log.debug('additional info:', exc_info=True)