一、配置文件位置
- /usr/local/opt/grafana/share/grafana/default.ini
- /usr/local/etc/grafana/grafana.ini
二、init格式
1、注释:
- 以";"开头,不管多长或多短,独占一行
三、配置文件调用顺序
1、grafana启动时,首先会调用/usr/local/opt/grafana/share/grafana/default.ini(定义了默认的启动信息)
2、之后会调用我们写的--config所指向的配置文件(默认为/usr/local/etc/grafana/grafana.ini),所以通过该文件我们可以覆盖default.ini的配置。
四、完整文件及注释
1 ##################### Grafana Configuration Example ##################### 2 # use "--config" to specified via command line 3 # Everything has defaults so you only need to uncomment(解开注释,去掉";") things you want to 4 # change 5 6 # possible values : production, development 7 app_mode = production 8 9 # grafana-server instance name, defaults to HOSTNAME environment variable value or hostname if HOSTNAME var is empty 10 # Used in logging and internal metrics and in clustering info 11 # use "echo ${HOSTNAME}" to view ${HOSTNAME} name 12 instance_name = ${HOSTNAME} 13 14 #################################### Paths #################################### 15 [paths] 16 # Path to where grafana can store temp files, sessions, and the sqlite3 db (if that is used) 17 # use "cfg:default.paths.data" to specified via command line 18 data = /usr/local/var/lib/grafana 19 # 20 # Directory where grafana can store logs 21 # use "cfg:default.paths.logs" to specified via command line 22 logs = /usr/local/var/log/grafana 23 # 24 # Directory where grafana will automatically scan and look for plugins 25 # use "cfg:default.paths.plugins" to specified via command line 26 plugins = /usr/local/var/lib/grafana/plugins 27 28 #################################### Server #################################### 29 [server] 30 # Protocol (http or https) 31 protocol = http 32 33 The ip address to bind to, empty will bind to all interfaces 34 http_addr = 192.168.20.237 35 36 # The http port to use, defaults to 3000 37 http_port = 3000 38 39 # The public facing domain name used to access grafana from a browser 40 domain = mygrafana 41 42 # Redirect to correct domain if host header does not match domain 43 # Prevents DNS rebinding attacks 44 ;enforce_domain = false 45 46 # The full public facing url 47 root_url = %(protocol)s://%(domain)s:%(http_port)s/ 48 49 # Log web requests 50 ;router_logging = false 51 52 # the path relative working path(The path to the directory where the front end files (HTML, JS, and CSS files)) 53 static_root_path = public 54 55 # enable gzip 56 ;enable_gzip = false 57 58 # https certs & key file(if protocol is set to https) 59 ;cert_file = 60 ;cert_key = 61 62 #################################### Database #################################### 63 [database] 64 # Grafana needs a database to store users and dashboards (and other things) 65 # Either "mysql", "postgres" or "sqlite3"(default), it's your choice 66 ;type = sqlite3 67 # host : Only applicable to MySQL or Postgres. Includes IP or hostname and port 68 ;host = 127.0.0.1:3306 69 # The name of the Grafana database 70 ;name = grafana 71 ;user = root 72 ;password = 73 74 # For "postgres" only, either "disable", "require" or "verify-full" 75 ;ssl_mode = disable 76 77 # For "sqlite3" only, path relative to data_path setting 78 ;path = grafana.db 79 80 #################################### Session #################################### 81 [session] 82 # Either "memory", "file", "redis", "mysql", "postgres", default is "file" 83 provider = file 84 85 # Provider config options 86 # memory: not have any config yet 87 # file: session dir path, is relative to grafana data_path 88 # redis: config like redis server e.g. `addr=127.0.0.1:6379,pool_size=100,db=grafana` 89 # mysql: go-sql-driver/mysql dsn config string, e.g. `user:password@tcp(127.0.0.1:3306)/database_name` 90 # postgres: user=a password=b host=localhost port=5432 dbname=c sslmode=disable 91 ;provider_config = sessions 92 93 # Session cookie name 94 cookie_name = grafana_sess 95 96 # If you use session in https only, default is false 97 ;cookie_secure = false 98 99 # Session life time, default is 86400(in seconds,24h) 100 session_life_time = 86400 101 102 #################################### Analytics #################################### 103 [analytics] 104 # Server reporting, sends usage counters to stats.grafana.org every 24 hours. 105 # No ip addresses are being tracked, only simple counters to track 106 # running instances, dashboard and error counts. It is very helpful to us. 107 # Change this option to false to disable reporting. 108 reporting_enabled = true 109 110 # Set to false to disable all checks to https://grafana.net 111 # for new vesions (grafana itself and plugins), check is used 112 # in some UI views to notify that grafana or plugin update exists 113 # This option does not cause any auto updates, nor send any information 114 # only a GET request to http://grafana.net to get latest versions 115 check_for_updates = true 116 117 # Google Analytics universal tracking code, only enabled if you specify an id here 118 ;google_analytics_ua_id = 119 120 #################################### Security #################################### 121 [security] 122 # default admin user, created on startup 123 ;admin_user = admin 124 admin_user = zhaojigang 125 126 # default admin password, can be changed before first start of grafana, or in profile settings 127 ;admin_password = admin 128 admin_password = zhaojigang 129 130 # used for signing(Used for signing keep me logged in / remember me cookies) 131 ;secret_key = SW2YcwTIb9zpOOhoPsMm 132 133 # Auto-login remember days(The number of days the keep me logged in / remember me cookie lasts) 134 login_remember_days = 7 135 ;cookie_username = grafana_user 136 ;cookie_remember_name = grafana_remember 137 138 # disable gravatar profile images 139 ;disable_gravatar = false 140 141 # data source proxy whitelist (ip_or_domain:port separated by spaces) 142 ;data_source_proxy_whitelist = 143 144 [snapshots] 145 # snapshot sharing options 146 ;external_enabled = true 147 ;external_snapshot_url = https://snapshots-origin.raintank.io 148 ;external_snapshot_name = Publish to snapshot.raintank.io 149 150 #################################### Users #################################### 151 [users] 152 # disable user signup / registration(Set to false to prohibit users from being able to sign up / create user accounts. Defaults to true. The admin user 153 # can still create users from the Grafana Admin Pages) 154 allow_sign_up = true 155 156 # Allow non admin users to create organizations(Set to false to prohibit users from creating new organizations) 157 ;allow_org_create = true 158 159 # Set to true to automatically assign new users to the default organization (id 1) 160 ;auto_assign_org = true 161 162 # Default role new users will be automatically assigned (if disabled above is set to true) 163 # other valid options are Admin and Editor and Read-Only Editor 164 auto_assign_org_role = Viewer 165 166 # Background text for the user field on the login page 167 ;login_hint = email or username 168 169 # Default UI theme ("dark" or "light") 170 ;default_theme = dark 171 172 #################################### Anonymous Auth ########################## 173 [auth.anonymous] 174 # enable anonymous access 175 ;enabled = false 176 177 # specify organization name that should be used for anonymous users 178 ;org_name = Main Org. 179 180 # Specify role for anonymous users. Defaults to Viewer, other valid options are Editor and Admin 181 ;org_role = Viewer 182 183 #################################### Github Auth ########################## 184 [auth.github] 185 ;enabled = false 186 ;allow_sign_up = false 187 ;client_id = some_id 188 ;client_secret = some_secret 189 ;scopes = user:email,read:org 190 ;auth_url = https://github.com/login/oauth/authorize 191 ;token_url = https://github.com/login/oauth/access_token 192 ;api_url = https://api.github.com/user 193 ;team_ids = 194 ;allowed_organizations = 195 196 #################################### Google Auth ########################## 197 [auth.google] 198 ;enabled = false 199 ;allow_sign_up = false 200 ;client_id = some_client_id 201 ;client_secret = some_client_secret 202 ;scopes = https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email 203 ;auth_url = https://accounts.google.com/o/oauth2/auth 204 ;token_url = https://accounts.google.com/o/oauth2/token 205 ;api_url = https://www.googleapis.com/oauth2/v1/userinfo 206 ;allowed_domains = 207 208 #################################### Auth Proxy ########################## 209 [auth.proxy] 210 ;enabled = false 211 ;header_name = X-WEBAUTH-USER 212 ;header_property = username 213 ;auto_sign_up = true 214 215 #################################### Basic Auth ########################## 216 [auth.basic] 217 ;enabled = true 218 219 #################################### Auth LDAP ########################## 220 [auth.ldap] 221 ;enabled = false 222 ;config_file = /etc/grafana/ldap.toml 223 224 #################################### SMTP / Emailing ########################## 225 [smtp] 226 ;enabled = false 227 ;host = localhost:25 228 ;user = 229 ;password = 230 ;cert_file = 231 ;key_file = 232 ;skip_verify = false 233 ;from_address = admin@grafana.localhost 234 235 [emails] 236 ;welcome_email_on_sign_up = false 237 238 #################################### Logging ########################## 239 [log] 240 # Either "console", "file", "syslog". Default is console and file 241 # Use space to separate multiple modes, e.g. "console file" 242 ;mode = console, file 243 244 # Either "trace", "debug", "info", "warn", "error", "critical", default is "info" 245 ;level = info 246 247 # For "console" mode only 248 [log.console] 249 ;level = 250 251 # log line format, valid options are text, console and json 252 ;format = console 253 254 # For "file" mode only 255 [log.file] 256 ;level = 257 258 # log line format, valid options are text, console and json 259 ;format = text 260 261 # This enables automated log rotate(switch of following options), default is true 262 ;log_rotate = true 263 264 # Max line number of single file, default is 1000000 265 ;max_lines = 1000000 266 267 # Max size shift of single file, default is 28 means 1 << 28, 256MB 268 ;max_size_shift = 28 269 270 # Segment log daily, default is true 271 ;daily_rotate = true 272 273 # Expired days of log file(delete after max days), default is 7 274 ;max_days = 7 275 276 [log.syslog] 277 ;level = 278 279 # log line format, valid options are text, console and json 280 ;format = text 281 282 # Syslog network type and address. This can be udp, tcp, or unix. If left blank, the default unix endpoints will be used. 283 ;network = 284 ;address = 285 286 # Syslog facility. user, daemon and local0 through local7 are valid. 287 ;facility = 288 289 # Syslog tag. By default, the process' argv[0] is used. 290 ;tag = 291 292 293 #################################### AMQP Event Publisher ########################## 294 [event_publisher] 295 ;enabled = false 296 ;rabbitmq_url = amqp://localhost/ 297 ;exchange = grafana_events 298 299 ;#################################### Dashboard JSON files ########################## 300 [dashboards.json] 301 ;enabled = false 302 ;path = /var/lib/grafana/dashboards 303 304 #################################### Internal Grafana Metrics ########################## 305 # Metrics available at HTTP API Url /api/metrics 306 [metrics] 307 # Disable / Enable internal metrics 308 enabled = true 309 310 # Publish interval(Flush/Write interval when sending metrics to external TSDB.) 311 ;interval_seconds = 10 312 313 # Include this section if you want to send internal Grafana metrics to Graphite 314 ; [metrics.graphite] 315 ; address = localhost:2003 316 ; prefix = prod.grafana.%(instance_name)s. 317 318 #################################### Internal Grafana Metrics ########################## 319 # Url used to to import dashboards directly from Grafana.net 320 [grafana_net] 321 url = https://grafana.net
注意:grafana的管理员只是在第一次启动时设置一次,之后无法再进行设置 。
所以,上边的admin_user=zhaojigang admin_password=zhaojigang如果不是第一次启动之前设置的,那么就是不起作用的
https://github.com/grafana/grafana/issues/6156
或者:参考:https://my.oschina.net/guol/blog/515126
![](https://images.cnblogs.com/OutliningIndicators/ContractedBlock.gif)
1 app_mode:应用名称,默认是production 2 3 [path] 4 data:一个grafana用来存储sqlite3、临时文件、回话的地址路径 5 logs:grafana存储logs的路径 6 7 [server] 8 http_addr:监听的ip地址,,默认是0.0.0.0 9 http_port:监听的端口,默认是3000 10 protocol:http或者https,,默认是http 11 domain:这个设置是root_url的一部分,当你通过浏览器访问grafana时的公开的domian名称,默认是localhost 12 enforce_domain:如果主机的header不匹配domian,则跳转到一个正确的domain上,默认是false 13 root_url:这是一个web上访问grafana的全路径url,默认是%(protocol)s://%(domain)s:%(http_port)s/ 14 router_logging:是否记录web请求日志,默认是false 15 cert_file:如果使用https则需要设置 16 cert_key:如果使用https则需要设置 17 18 [database] 19 grafana默认需要使用数据库存储用户和dashboard信息,默认使用sqlite3来存储,你也可以换成其他数据库 20 type:可以是mysql、postgres、sqlite3,默认是sqlite3 21 path:只是sqlite3需要,定义sqlite3的存储路径 22 host:只是mysql、postgres需要,默认是127.0.0.1:3306 23 name:grafana的数据库名称,默认是grafana 24 user:连接数据库的用户 25 password:数据库用户的密码 26 ssl_mode:只是postgres使用 27 28 29 [security] 30 admin_user:grafana默认的admin用户,默认是admin 31 admin_password:grafana admin的默认密码,默认是admin 32 login_remember_days:多少天内保持登录状态 33 secret_key:保持登录状态的签名 34 disable_gravatar: 35 36 37 [users] 38 allow_sign_up:是否允许普通用户登录,如果设置为false,则禁止用户登录,默认是true,则admin可以创建用户,并登录grafana 39 allow_org_create:如果设置为false,则禁止用户创建新组织,默认是true 40 auto_assign_org:当设置为true的时候,会自动的把新增用户增加到id为1的组织中,当设置为false的时候,新建用户的时候会新增一个组织 41 auto_assign_org_role:新建用户附加的规则,默认是Viewer,还可以是Admin、Editor 42 43 44 [auth.anonymous] 45 enabled:设置为true,则开启允许匿名访问,默认是false 46 org_name:为匿名用户设置组织名称 47 org_role:为匿名用户设置的访问规则,默认是Viewer 48 49 50 [auth.github] 51 针对github项目的,很明显,呵呵 52 enabled = false 53 allow_sign_up = false 54 client_id = some_id 55 client_secret = some_secret 56 scopes = user:email 57 auth_url = https://github.com/login/oauth/authorize 58 token_url = https://github.com/login/oauth/access_token 59 api_url = https://api.github.com/user 60 team_ids = 61 allowed_domains = 62 allowed_organizations = 63 64 65 [auth.google] 66 针对google app的,呵呵 67 enabled = false 68 allow_sign_up = false 69 client_id = some_client_id 70 client_secret = some_client_secret 71 scopes = https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email 72 auth_url = https://accounts.google.com/o/oauth2/auth 73 token_url = https://accounts.google.com/o/oauth2/token 74 api_url = https://www.googleapis.com/oauth2/v1/userinfo 75 allowed_domains = 76 77 78 [auth.basic] 79 enabled:当设置为true,则http api开启基本认证 80 81 82 [auth.ldap] 83 enabled:设置为true则开启LDAP认证,默认是false 84 config_file:如果开启LDAP,指定LDAP的配置文件/etc/grafana/ldap.toml 85 86 87 [auth.proxy] 88 允许你在一个HTTP反向代理上进行认证设置 89 enabled:默认是false 90 header_name:默认是X-WEBAUTH-USER 91 header_property:默认是个名称username 92 auto_sign_up:默认是true。开启自动注册,如果用户在grafana DB中不存在 93 94 [analytics] 95 reporting_enabled:如果设置为true,则会发送匿名使用分析到stats.grafana.org,主要用于跟踪允许实例、版本、dashboard、错误统计。默认是true 96 google_analytics_ua_id:使用GA进行分析,填写你的GA ID即可 97 98 99 [dashboards.json] 100 如果你有一个系统自动产生json格式的dashboard,则可以开启这个特性试试 101 enabled:默认是false 102 path:一个全路径用来包含你的json dashboard,默认是/var/lib/grafana/dashboards 103 104 105 [session] 106 provider:默认是file,值还可以是memory、mysql、postgres 107 provider_config:这个值的配置由provider的设置来确定,如果provider是file,则是data/xxxx路径类型,如果provider是mysql,则是user:password@tcp(127.0.0.1:3306)/database_name,如果provider是postgres,则是user=a password=b host=localhost port=5432 dbname=c sslmode=disable 108 cookie_name:grafana的cookie名称 109 cookie_secure:如果设置为true,则grafana依赖https,默认是false 110 session_life_time:session过期时间,默认是86400秒,24小时 111 112 113 以下是官方文档没有,配置文件中有的 114 [smtp] 115 enabled = false 116 host = localhost:25 117 user = 118 password = 119 cert_file = 120 key_file = 121 skip_verify = false 122 from_address = admin@grafana.localhost 123 124 [emails] 125 welcome_email_on_sign_up = false 126 templates_pattern = emails/*.html 127 128 129 [log] 130 mode:可以是console、file,默认是console、file,也可以设置多个,用逗号隔开 131 buffer_len:channel的buffer长度,默认是10000 132 level:可以是"Trace", "Debug", "Info", "Warn", "Error", "Critical",默认是info 133 134 [log.console] 135 level:设置级别 136 137 [log.file] 138 level:设置级别 139 log_rotate:是否开启自动轮转 140 max_lines:单个日志文件的最大行数,默认是1000000 141 max_lines_shift:单个日志文件的最大大小,默认是28,表示256MB 142 daily_rotate:每天是否进行日志轮转,默认是true 143 max_days:日志过期时间,默认是7,7天后删除