Skip to end of metadata
Go to start of metadata

noc.conf file stores global configuration shared between daemons

[main] section

 

NameTypeDescriptionValuesExample
debugBooleanWhether to display error reports in the HTML page (For non-AJAX applications only)
  • true: Display error report in the HTML page
  • false: Do not display error report in HTML page, send via email to admin_emails list instead
 
debug_jsBooleanLoad non-minified versions of js libraries, if not false
  • true: Load full version of js libraries
  • false: Load squeezed version of js libraries
 
server_emailStringFrom: field for all server-generated emails noc@example.com
admin_emailStringComma-separated list of emails which will receive error_reports when debug option set to false  
timezoneStringcal time zone for installation. Choices can be found here: PostgreSQL DATETIME-TIMEZONE although not all variations may be possible on all operating systems. Europe/Moscow
language_codeStringLanguage code for installation. All choices can be found here: w3.org en
secret_keyStringRandom string used as seed for web session protection. Make this key unique and keep secret. DSFJsbkbwjkhzsdhuE42s
date_formatStringDefault date format to be used by NOC. See Datetime Format for format characters description  
time_formatStringDefault time format to be used by NOC. See Datetime Format for format characters description  
month_day_formatStringDefault month and day format to be used by NOC. See Datetime Format for format characters description  
year_month_formatStringDefault year and month format to be used by NOC. See Datetime Format for format characters description  

datetime_format

StringDefault date and time format to be used by NOC. See Datetime Format for format characters description  
polling_methodStringSocket factory polling method.
  • optimal: Use optimal polling method available (kevent/epoll, then poll, then select)
  • kevent: Use kevent()/kqueue() (FreeBSD, Mac OS X)
  • epoll: Use epoll() (Linux, Solaris)
  • poll: Use poll()
  • select: Use select()
 
installed_appsStringComma-separated list of locally installed django applicatons noc.myapp1,noc.myapp2
crashinfo_limitIntegerMaximal size of crash info file. Larger crash dumps will be silently discarded 1000000
log_api_callsBooleanEnable REST API calls logging
  • true - Log REST API calls
  • false - Do not log REST API calls
false
log_sql_statementsBooleanEnable logging SQL statements
  • true - Log SQL statements
  • false - Do not log SQL statements
false

 

[database] section

PostgreSQL database credentials

NameTypeDescriptionValuesExample
engineStringDatabase engine. Only postgresql_psycopg2 supported at this moment.postgresql_psycopg2 
nameStringDatabase name noc
userStringDatabase user noc
passwordStringDatabase password, if required secret
hostStringDatabase host or UNIX socket path
  • <empty> - localhost
  • host - host
  • path - UNIX socket
 
portIntegerDatabase port, if not default  

[nosql] section

mongodb database credentials and settings

 

NameTypeDescriptionValuesExample
nameStringmongodb database name noc
userStringmongod database user noc
passwordStringmongodb database password, if required secret
hostStringDatabase host, if not default


 
portIntegerDatabase port, if not default  

[authentication] section

 User authentication settings (Additional python-ldap library is required when using ldap authentication method)

 

NameTypeDescriptionValuesExample
methodStringAuthentication method
  • local - Users are stored in local NOC database
  • ldap - Users are stored on LDAP server
  • http - Trust REMOTE_USER variable set by frontend HTTP-server
local
restrict_to_groupStringWhen set, permit logins only to users from specified groupGroup nameAdmins
single_session_groupStringWhen set, permit only one login session per each user of groupGroup nameOperators
mutual_exclusive_groupStringWhen set, permit only on login session per all users of groupGroup nameMutual
Parameters applicable for ldap method only
ldap_serverStringAn URL of LDAP server. If your LDAP server requires to directly specify partitions (Like and Apache DS), place partition DN into path 
ldap://ldap.example.com/o=partition
ldap_bind_methodStringLDAP bind method
  • simple -  use simple user/password authentication
 
ldap_bind_dnStringTechnical DN to lookup user information. Bind as anonymous user if not set  
ldap_bind_passwordStringPassword for technical user. See ldap_bind_dn for details. Leave empty for anonymous bind.  
ldap_users_baseStringBase DN to search for users  
ldap_users_filterStringLDAP Filter expression to find the user. {{username}} string will be substituted with properly quoted username  
ldap_groups_baseStringBase DN to search for groups  
ldap_required_groupStringGroup DN. If set, disable user if not in the group.  
ldap_required_filterStringLDAP Filter expression to check the user. {{user_dn}} string will be substituted with user’s DN  
ldap_superuser_groupStringGroup DN. If set, grant superuser permissions if user in the group.  
ldap_superuser_filterStringLDAP Filter expression to check the user. {{user_dn}} string will be substituted with user’s DN  
Parameters applicable for ad method only
ad_serverStringAn URL of AD server  
ad_bind_methodStringAD bind method
  • simple -  use simple user/password authentication
 
ad_bind_dnStringTechnical DN to lookup user information. Bind as anonymous user if not set  
ad_bind_passwordStringPassword for technical user. See ad_bind_dn for details. Leave empty for anonymous bind.  
ad_users_baseStringBase DN to search for users  
ad_users_filterStringLDAP Filter expression to find the user. {{username}} string will be substituted with properly quoted username  
ad_groups_baseStringBase DN to search for groups  
ad_required_groupStringGroup DN. If set, disable user if not in the group.  
ad_required_filterStringLDAP Filter expression to check the user. {{user_dn}} string will be substituted with user’s DN  
ad_superuser_groupStringGroup DN. If set, grant superuser permissions if user in the group.  
ad_superuser_filterStringLDAP Filter expression to check the user. {{user_dn}} string will be substituted with user’s DN  

[customization] section

 

NameTypeDescription
installation_name
StringThe name of the NOC installation. Installation name shown at the top-left corner of the web interface.
logo_url
StringAbsolute or relative url of the logo. Logo is an image shown at the top-left corner of the web interface
logo_height
IntegerA height of the logo in pixels
logo_width
IntegerA width of the logo in pixels
favicon_url
StringAn url for page icon
default_themeStringDefault UI theme. See [themes] section for the list of available themes

[themes] section

 

NameTypeDescriptionExample
<theme>.name
StringTheme's namegray.name = Gray
<theme>.cssStringTheme's CSS URLgray.css = /static/resources/css/ext-all-gray.css
<theme>.enabledBooleanTheme's status (enabled/disabled)gray.enabled = true

[path] section

 

NameTypeDescription
backup_dir
StringDirectory to place database and repo backup. Must be writable by noc user. Ensure backup_dir is readable and writable only by trusted users
ssh
StringA path to the ssh binary
tar
StringA path to the tar binary. POSIX-compatible tar required. Additional extensions (like z flag) are not necessary
gzip
StringA path to the gzip binary
rsync
StringA path to the rsync binary
dig
StringA path to the dig binary
pg_dump
StringA path to the PostgreSQL pg_dump utility. Ensure proper version of pg_dump used (PostgreSQL 8.1 or later)
mongodump
StringA path to the MongoDB’s mongodump utility.
smilint
StringA path to the smilint utility. smilint is a part of libsmi distribution
smidump
StringA path to the smidump utility. smidump is a part of libsmi distribution
gpg
StringA path to GnuPG binary.

[cm] section

This section describes configuration management settings

 

NameTypeDescriptionValues
repo
StringPath to the repository. repo must be writable by noc user. Ensure backup_dir is readable and writable only by trusted users 
vcs_type
String

A type of Version Control System (VCS) used by cm.

  • hg - Mercurial, stable, recommended
  • CSV - CVS, experimental
concurrencyIntegerWhen non-zero, limit amount of concurrently pulled configs to avoid activators overload 
timeout_variation
IntegerRandom variation of timeout. Variation is necessary to perform local task reordering to prevent constant queue blocking by improperly functioning managed objects. Variation is defined in percents. When timeout is T seconds and variation is V percents real timeout will be calculated as equally distributed random value in interval [T*(1-V/100),T*(1+V/100)] 
timeout_error
IntegerTimeout to wait when error occurred during get_config script execution 
timeout_overload
IntegerTimeout to wait when activator reports overload during get_config script execution. Activator overload means activator’s amount of concurrently executing scripts exceeds max_scripts value 
timeout_down
IntegerTimeout to wait when activator reports target host is down. Target host reachability status updated every time ping probe executed 

[peer] section

NameTypeDescription
rpsl_inverse_pref_style
BooleanSelect RPSL pref= behavior. off means pref = localpref, on means standard RPSL’s pref = 65535-localpref
prefix_list_optimizationIntegerEnable prefix-list optimization whenever possible
prefix_list_optimization_thresholdIntegerDo not optimize prefix lists shorter than threshold
max_prefix_lengthIntegerMaximal prefix length for generated prefix lists
use_ripeBooleanUse RIPE database to build prefix lists (Can be used together with use_arin and use_radb)
use_arinBooleanUse ARIN database to build prefix lists (Can be used together with use_ripe and use_radb)
use_radbBooleanUse RADb database to build prefix lists (Can be used together with use_ripe and use_arin)

[dns] section

 

NameTypeDescription
warn_before_expired_days
IntegerStart to issue domain expiration warnings from warn_before_expired_days day before deadline
 

[tt] section

Trouble-ticketing system integration.

 

NameTypeDescription
url
String

Pattern to convert trouble ticket id to the link URL. Following strings are expanded to:

stringdescription
%(tt)sExpanded to the trouble ticket id

 

 

[backup] section

[backup] section contains settings for main.backup periodic task

 

NameTypeDescription
keep_days
IntegerKeep last keep_days days of backups
keep_weeks
IntegerAfter keep_days store only one backup per week for the next keep_weeks weeks. Only backups created at keep_day_of_week day of week are left.
keep_day_of_week
IntegerKeep only backup performed at keep_day_of_week (0 - Monday, 6 - Saturday)
keep_months
IntegerAfter keep_weeks interval expired keep only one backup per month for the next keep_months months. Only backups created atkeep_day_of_months days of months are left.
keep_day_of_month
IntegerKeep only backups performed at keep_day_of_month (1-based)

 

[pgp] section

 

NameTypeDescription
use_key
StringPrivate key used to encrypt message. Must me email or key id.
keyserver
StringKeyserver used to retrieve missed keys

[cache] section

 

NameTypeDescription
sa_managedobjectselector_object_idsInteger 
vc_vcinterfacescountIntegerVC module caches
vc_vcprefixesInteger