class escalator(ConfigSection): max_threads = IntParameter(default=5) retry_timeout = SecondsParameter(default="60s") tt_escalation_limit = IntParameter(default=10) ets = SecondsParameter(default="60s") wait_tt_check_interval = SecondsParameter(default="60s") sample = IntParameter(default=0)
class fm(ConfigSection): active_window = SecondsParameter(default="1d") keep_events_wo_alarm = IntParameter(default=0) keep_events_with_alarm = IntParameter(default=-1) alarm_close_retries = IntParameter(default=5) outage_refresh = SecondsParameter(default="60s") total_outage_refresh = SecondsParameter(default="60s")
class script(ConfigSection): timeout = SecondsParameter(default="2M", help="default sa script script timeout") session_idle_timeout = SecondsParameter(default="1M", help="default session timeout") caller_timeout = SecondsParameter(default="1M") calling_service = StringParameter(default="script")
class cache(ConfigSection): vcinterfacescount = SecondsParameter(default="1h") vcprefixes = SecondsParameter(default="1h") cache_class = StringParameter( default="noc.core.cache.mongo.MongoCache") default_ttl = SecondsParameter(default="1d") pool_size = IntParameter(default=8)
class clickhouse(ConfigSection): rw_addresses = ServiceParameter(service="clickhouse", wait=True) db = StringParameter(default="noc") rw_user = StringParameter(default="default") rw_password = SecretParameter() ro_addresses = ServiceParameter(service="clickhouse", wait=True) ro_user = StringParameter(default="readonly") ro_password = SecretParameter() request_timeout = SecondsParameter(default="1h") connect_timeout = SecondsParameter(default="10s") default_merge_tree_granularity = IntParameter(default=8192) encoding = StringParameter(default="", choices=["", "deflate", "gzip"]) # Enable LowCardinality fileds enable_low_cardinality = BooleanParameter(default=False) # Cluster name for sharded/replicated configuration # Matches appropriative <remote_servers> part cluster = StringParameter() # Cluster topology # Expression in form # <topology> ::= <shard> | <shard>,<topology> # <shard> ::= [<weight>]<replicas> # <weight> := <DIGITS> # <replicas> := <DIGITS> # Examples: # 1 - non-replicated, non-sharded configuration # 1,1 - 2 shards, non-replicated # 2,2 - 2 shards, 2 replicas in each # 3:2,2 - first shard has 2 replicas an weight 3, # second shard has 2 replicas and weight 1 cluster_topology = StringParameter(default="1")
class scheduler(ConfigSection): max_threads = IntParameter(default=20) submit_threshold_factor = IntParameter(default=10) max_chunk_factor = IntParameter(default=1) updates_per_check = IntParameter(default=4) cache_default_ttl = SecondsParameter(default="1d") autointervaljob_interval = SecondsParameter(default="1d") autointervaljob_initial_submit_interval = SecondsParameter(default="1d")
class fm(ConfigSection): active_window = SecondsParameter(default="1d") keep_events_wo_alarm = IntParameter(default=0) keep_events_with_alarm = IntParameter(default=-1) alarm_close_retries = IntParameter(default=5) outage_refresh = SecondsParameter(default="60s") total_outage_refresh = SecondsParameter(default="60s") enable_rca_neighbor_cache = BooleanParameter(default=False)
class rpc(ConfigSection): retry_timeout = StringParameter(default="0.1,0.5,1,3,10,30") sync_connect_timeout = SecondsParameter(default="20s") sync_request_timeout = SecondsParameter(default="1h") sync_retry_timeout = FloatParameter(default=1.0) sync_retry_delta = FloatParameter(default=2.0) sync_retries = IntParameter(default=5) async_connect_timeout = SecondsParameter(default="20s") async_request_timeout = SecondsParameter(default="1h")
class correlator(ConfigSection): max_threads = IntParameter(default=20) topology_rca_window = IntParameter(default=0) discovery_delay = SecondsParameter(default="10M") auto_escalation = BooleanParameter(default=True) rca_lock_initial_timeout = FloatParameter(default=0.1) rca_lock_max_timeout = FloatParameter(default=3.0) rca_lock_rate = FloatParameter(default=1.61) rca_lock_dev = FloatParameter(default=0.1) rca_lock_expiry = SecondsParameter(default="10s")
class mongo(ConfigSection): addresses = ServiceParameter(service="mongo", wait=True) db = StringParameter(default="noc") user = StringParameter() password = SecretParameter() rs = StringParameter() retries = IntParameter(default=20) timeout = SecondsParameter(default="3s") retry_writes = BooleanParameter(default=False) app_name = StringParameter() max_idle_time = SecondsParameter(default="60s")
class login(ConfigSection): methods = StringParameter(default="local") session_ttl = SecondsParameter(default="7d") language = StringParameter(default="en") restrict_to_group = StringParameter(default="") single_session_group = StringParameter(default="") mutual_exclusive_group = StringParameter(default="") idle_timeout = SecondsParameter(default="1w") pam_service = StringParameter(default="noc") radius_secret = SecretParameter(default="noc") radius_server = StringParameter() user_cookie_ttl = IntParameter(default=1)
class http_client(ConfigSection): connect_timeout = SecondsParameter(default="10s") request_timeout = SecondsParameter(default="1h") user_agent = StringParameter(default="noc") buffer_size = IntParameter(default=128 * 1024) max_redirects = IntParameter(default=5) ns_cache_size = IntParameter(default=1000) resolver_ttl = SecondsParameter(default="3s") http_port = IntParameter(default=80) https_port = IntParameter(default=443) validate_certs = BooleanParameter(default=False, help="Have to be set as True")
class login(ConfigSection): methods = StringParameter(default="local") session_ttl = SecondsParameter(default="7d") language = StringParameter(default="en") restrict_to_group = StringParameter(default="") single_session_group = StringParameter(default="") mutual_exclusive_group = StringParameter(default="") idle_timeout = SecondsParameter(default="1w") pam_service = StringParameter(default="noc") radius_secret = SecretParameter(default="noc") radius_server = StringParameter() register_last_login = BooleanParameter(default=True) jwt_cookie_name = StringParameter(default="noc_jwt") jwt_algorithm = StringParameter(default="HS256", choices=["HS256", "HS384", "HS512"])
class geocoding(ConfigSection): order = StringParameter(default="yandex,google") yandex_key = SecretParameter(default="") yandex_apikey = SecretParameter(default="") google_key = SecretParameter(default="") google_language = StringParameter(default="en") negative_ttl = SecondsParameter(default="7d", help="Period then saving bad result")
class nsqd(ConfigSection): addresses = ServiceParameter(service="nsqd", wait=True, near=True, full_result=False) http_addresses = ServiceParameter( service="nsqdhttp", wait=True, near=True, full_result=False ) pub_retries = IntParameter(default=5) pub_retry_delay = FloatParameter(default=1) mpub_messages = IntParameter(default=10000) mpub_size = IntParameter(default=1048576) topic_mpub_rate = IntParameter(default=10) ch_chunk_size = IntParameter(default=4000) connect_timeout = SecondsParameter(default="3s") request_timeout = SecondsParameter(default="30s") reconnect_interval = IntParameter(default=15) compression = StringParameter(choices=["", "deflate", "snappy"], default="") compression_level = IntParameter(default=6) max_in_flight = IntParameter(default=1)
class chwriter(ConfigSection): batch_size = IntParameter(default=50000) records_buffer = IntParameter(default=1000000) batch_delay_ms = IntParameter(default=10000) channel_expire_interval = SecondsParameter(default="5M") suspend_timeout_ms = IntParameter(default=3000) # Topic to listen topic = StringParameter(default="chwriter") # <address:port> of ClickHouse server to write write_to = StringParameter() max_in_flight = IntParameter(default=10)
class bi(ConfigSection): language = StringParameter(default="en", help="Language BI interface") query_threads = IntParameter(default=10) extract_delay_alarms = SecondsParameter(default="1h") clean_delay_alarms = SecondsParameter(default="1d") reboot_interval = SecondsParameter(default="1M") extract_delay_reboots = SecondsParameter(default="1h") clean_delay_reboots = SecondsParameter(default="1d") chunk_size = IntParameter(default=500) extract_window = SecondsParameter(default="1d") enable_alarms = BooleanParameter(default=False) enable_reboots = BooleanParameter(default=False) enable_managedobjects = BooleanParameter(default=False) enable_alarms_archive = BooleanParameter(default=False) alarms_archive_policy = MapParameter( default="weekly", mappings={ "weekly": '{{doc["clear_timestamp"].strftime("y%Yw%W")}}', "monthly": '{{doc["clear_timestamp"].strftime("y%Ym%m")}}', "quarterly": '{{doc["clear_timestamp"].strftime("y%Y")}}' '_quarter{{(doc["clear_timestamp"].month-1)//3 + 1}}', "yearly": '{{doc["clear_timestamp"].strftime("y%Y")}}', }, ) alarms_archive_batch_limit = IntParameter(default=10000)
class audit(ConfigSection): command_ttl = SecondsParameter(default="1m") login_ttl = SecondsParameter(default="1m") reboot_ttl = SecondsParameter(default="0") config_ttl = SecondsParameter(default="1y") db_ttl = SecondsParameter(default="5y") config_changed_ttl = SecondsParameter(default="1y")
class consul(ConfigSection): token = SecretParameter() connect_timeout = SecondsParameter(default="5s") request_timeout = SecondsParameter(default="1h") near_retry_timeout = IntParameter(default=1) host = StringParameter(default="consul") port = IntParameter(default=8500) check_interval = SecondsParameter(default="10s") check_timeout = SecondsParameter(default="1s") release = SecondsParameter(default="1M") session_ttl = SecondsParameter(default="10s") lock_delay = SecondsParameter(default="20s") retry_timeout = SecondsParameter(default="1s") keepalive_attempts = IntParameter(default=5) base = StringParameter(default="noc", help="kv lookup base")
class liftbridge(ConfigSection): addresses = ServiceParameter(service="liftbridge", wait=True, near=True, full_result=False) max_message_size = IntParameter( default=921600, help="Max message size for GRPC client") publish_async_ack_timeout = IntParameter(default=10) compression_threshold = IntParameter(default=524288) compression_method = StringParameter(choices=["", "zlib", "lzma"], default="zlib") enable_http_proxy = BooleanParameter(default=False) # mx, kafkasender, events, dispose stream_events_retention_max_age = SecondsParameter( default="24h", help= "FM events stream retention interval. If 0 use Liftbrdige setting value", ) stream_events_retention_max_bytes = BytesParameter( default=0, help= "FM events stream retention size (in bytes). If 0 use Liftbrdige setting value", ) stream_events_segment_max_age = SecondsParameter( default="1h", help= "FM events stream segment interval. Must be less retention age. If 0 use Liftbrdige setting value", ) stream_events_segment_max_bytes = BytesParameter( default=0, help= "FM events stream segment size. Must be less retention size. If 0 use Liftbrdige setting value", ) stream_events_auto_pause_time = SecondsParameter( default=0, help= "FM events stream pause time. If 0 use Liftbrdige setting value") stream_events_auto_pause_disable_if_subscribers = BooleanParameter( default=False) stream_dispose_retention_max_age = SecondsParameter( default="24h", help= "FM alarms stream retention interval. If 0 use Liftbrdige setting value", ) stream_dispose_retention_max_bytes = BytesParameter( default=0, help= "FM alarms stream retention size (in bytes). If 0 use Liftbrdige setting value", ) stream_dispose_segment_max_age = SecondsParameter( default="1h", help= "FM alarms stream segment interval. Must be less retention age. If 0 use Liftbrdige setting value", ) stream_dispose_segment_max_bytes = BytesParameter( default=0, help= "FM alarms stream segment size. Must be less retention size. If 0 use Liftbrdige setting value", ) stream_dispose_auto_pause_time = SecondsParameter( default=0, help= "FM alarms stream pause time. If 0 use Liftbrdige setting value") stream_dispose_auto_pause_disable_if_subscribers = BooleanParameter( default=False) stream_message_retention_max_age = SecondsParameter(default="1h") stream_message_retention_max_bytes = BytesParameter(default=0) stream_message_segment_max_age = SecondsParameter(default="30M") stream_message_segment_max_bytes = BytesParameter(default=0) stream_message_auto_pause_time = SecondsParameter(default=0) stream_message_auto_pause_disable_if_subscribers = BooleanParameter( default=False) stream_kafkasender_retention_max_age = SecondsParameter(default="1h") stream_kafkasender_retention_max_bytes = BytesParameter(default=0) stream_kafkasender_segment_max_age = SecondsParameter(default="30M") stream_kafkasender_segment_max_bytes = BytesParameter(default=0) stream_kafkasender_auto_pause_time = SecondsParameter(default=0) stream_kafkasender_auto_pause_disable_if_subscribers = BooleanParameter( default=False) stream_ch_retention_max_age = SecondsParameter(default="1h") stream_ch_retention_max_bytes = BytesParameter(default="100M") stream_ch_segment_max_age = SecondsParameter(default="30M") stream_ch_segment_max_bytes = BytesParameter(default="50M") stream_ch_auto_pause_time = SecondsParameter(default=0) stream_ch_auto_pause_disable_if_subscribers = BooleanParameter( default=False) stream_ch_replication_factor = IntParameter( default=1, help="Replicaton factor for clickhouse streams") metrics_send_delay = FloatParameter(default=0.25)
class datastream(ConfigSection): enable_administrativedomain = BooleanParameter(default=False) enable_administrativedomain_wait = BooleanParameter( default=True, help= "Activate Wait Mode for Adm. Domain datastream (Mongo greater 3.6 needed)", ) administrativedomain_ttl = SecondsParameter( default="0", help="Removing datastream administrativedomain records older days", ) enable_alarm = BooleanParameter(default=False) enable_alarm_wait = BooleanParameter( default=True, help= "Activate Wait Mode for Alarm datastream (Mongo greater 3.6 needed)" ) alarm_ttl = SecondsParameter( default="14d", help="Removing datastream alarm records older days", ) enable_cfgping = BooleanParameter(default=True) enable_cfgping_wait = BooleanParameter( default=True, help= "Activate Wait Mode for CfgPing datastream (Mongo greater 3.6 needed)", ) cfgping_ttl = SecondsParameter( default="0", help="Removing datastream cfgping records older days", ) enable_cfgsyslog = BooleanParameter(default=True) enable_cfgsyslog_wait = BooleanParameter( default=True, help= "Activate Wait Mode for CfgSyslog datastream (Mongo greater 3.6 needed)", ) cfgsyslog_ttl = SecondsParameter( default="0", help="Removing datastream cfgsyslog records older days", ) enable_cfgtrap = BooleanParameter(default=True) enable_cfgtrap_wait = BooleanParameter( default=True, help= "Activate Wait Mode for CfgTrap datastream (Mongo greater 3.6 needed)", ) cfgtrap_ttl = SecondsParameter( default="0", help="Removing datastream cfgtrap records older days", ) enable_dnszone = BooleanParameter(default=False) enable_dnszone_wait = BooleanParameter( default=True, help= "Activate Wait Mode for DNS Zone datastream (Mongo greater 3.6 needed)", ) dnszone_ttl = SecondsParameter( default="0", help="Removing datastream dnszone records older days", ) enable_managedobject = BooleanParameter(default=False) enable_managedobject_wait = BooleanParameter( default=True, help= "Activate Wait Mode for ManagedObject datastream (Mongo greater 3.6 needed)", ) managedobject_ttl = SecondsParameter( default="0", help="Removing datastream managedobject records older days", ) enable_resourcegroup = BooleanParameter(default=False) enable_resourcegroup_wait = BooleanParameter( default=True, help= "Activate Wait Mode for ResourceGroup datastream (Mongo greater 3.6 needed)", ) resourcegroup_ttl = SecondsParameter( default="0", help="Removing datastream resourcegroup records older days", ) enable_vrf = BooleanParameter(default=False) enable_vrf_wait = BooleanParameter( default=True, help= "Activate Wait Mode for VRF datastream (Mongo greater 3.6 needed)") vrf_ttl = SecondsParameter( default="0", help="Removing datastream vrf records older days", ) enable_prefix = BooleanParameter(default=False) enable_prefix_wait = BooleanParameter( default=True, help= "Activate Wait Mode for Prefix datastream (Mongo greater 3.6 needed)" ) prefix_ttl = SecondsParameter( default="0", help="Removing datastream prefix records older days", ) enable_address = BooleanParameter(default=False) enable_address_wait = BooleanParameter( default=True, help= "Activate Wait Mode for Address datastream (Mongo greater 3.6 needed)", ) address_ttl = SecondsParameter( default="0", help="Removing datastream address records older days", )
class datasource(ConfigSection): chunk_size = IntParameter(default=1000) max_threads = IntParameter(default=10) default_ttl = SecondsParameter(default="1h")
class backup(ConfigSection): keep_days = SecondsParameter(default="14d") keep_weeks = SecondsParameter(default="12w") keep_day_of_week = IntParameter(default="6") keep_months = IntParameter(default="12") keep_day_of_month = IntParameter(default="1")
class threadpool(ConfigSection): idle_timeout = SecondsParameter(default="30s") shutdown_timeout = SecondsParameter(default="1M")
class sae(ConfigSection): db_threads = IntParameter(default=20) activator_resolution_retries = IntParameter(default=5) activator_resolution_timeout = SecondsParameter(default="2s")
class dcs(ConfigSection): resolution_timeout = SecondsParameter(default="5M") resolver_expiration_timeout = SecondsParameter(default="10M")
class redis(ConfigSection): addresses = ServiceParameter(service="redis", wait=True, full_result=True) db = IntParameter(default=0) default_ttl = SecondsParameter(default="1d")
class nbi(ConfigSection): max_threads = IntParameter(default=10) objectmetrics_max_interval = SecondsParameter(default="3h")
class dns(ConfigSection): warn_before_expired = SecondsParameter(default="30d")
class memcached(ConfigSection): addresses = ServiceParameter(service="memcached", wait=True, full_result=True) pool_size = IntParameter(default=8) default_ttl = SecondsParameter(default="1d")