grafana改用pgsql后的配置(运行失败)和对应docker失败日志

##################### Grafana Configuration Example #####################
#
# Everything has defaults so you only need to uncomment things you want to
# change

# possible values : production, development
;app_mode = production

# instance name, defaults to HOSTNAME environment variable value or hostname if HOSTNAME var is empty
;instance_name = ${HOSTNAME}

#################################### Paths ####################################
[paths]
# Path to where grafana can store temp files, sessions, and the sqlite3 db (if that is used)
;data = /var/lib/grafana

# Temporary files in `data` directory older than given duration will be removed
;temp_data_lifetime = 24h

# Directory where grafana can store logs
;logs = /var/log/grafana

# Directory where grafana will automatically scan and look for plugins
;plugins = /var/lib/grafana/plugins

# folder that contains provisioning config files that grafana will apply on startup and while running.
;provisioning = conf/provisioning

#################################### Server ####################################
[server]
# Protocol (http, https, socket)
;protocol = http

# The ip address to bind to, empty will bind to all interfaces
;http_addr =

# The http port  to use
;http_port = 3000

# The public facing domain name used to access grafana from a browser
;domain = localhost

# Redirect to correct domain if host header does not match domain
# Prevents DNS rebinding attacks
;enforce_domain = false

# The full public facing url you use in browser, used for redirects and emails
# If you use reverse proxy and sub path specify full url (with sub path)
;root_url = http://localhost:3000

# Log web requests
;router_logging = false

# the path relative working path
;static_root_path = public

# enable gzip
;enable_gzip = false

# https certs & key file
;cert_file =
;cert_key =

# Unix socket path
;socket =

#################################### Database ####################################
[database]
# You can configure the database connection by specifying type, host, name, user and password
# as separate properties or as on string using the url properties.

# Either "mysql", "postgres" or "sqlite3", it's your choice
type = postgres
host = 192.168.58.132:5432
name = keycloak
user = keycloak
# If the password contains # or ; you have to wrap it with triple quotes. Ex """#password;"""
password = root

# Use either URL or the previous fields to configure the database
# Example: mysql://user:secret@host:port/database
;url =

# For "postgres" only, either "disable", "require" or "verify-full"
ssl_mode = disable

# For "sqlite3" only, path relative to data_path setting
;path = grafana.db

# Max idle conn setting default is 2
;max_idle_conn = 2

# Max conn setting default is 0 (mean not set)
;max_open_conn =

# Connection Max Lifetime default is 14400 (means 14400 seconds or 4 hours)
;conn_max_lifetime = 14400

# Set to true to log the sql calls and execution times.
;log_queries = true

# For "sqlite3" only. cache mode setting used for connecting to the database. (private, shared)
;cache_mode = private

#################################### Cache server #############################
[remote_cache]
# Either "redis", "memcached" or "database" default is "database"
;type = database

# cache connectionstring options
# database: will use Grafana primary database.
# redis: config like redis server e.g. `addr=127.0.0.1:6379,pool_size=100,db=0`. Only addr is required.
# memcache: 127.0.0.1:11211
;connstr =

#################################### Data proxy ###########################
[dataproxy]

# This enables data proxy logging, default is false
;logging = false

# How long the data proxy should wait before timing out default is 30 (seconds)
;timeout = 30

# If enabled and user is not anonymous, data proxy will add X-Grafana-User header with username into the request, default is false.
;send_user_header = false

#################################### Analytics ####################################
[analytics]
# Server reporting, sends usage counters to stats.grafana.org every 24 hours.
# No ip addresses are being tracked, only simple counters to track
# running instances, dashboard and error counts. It is very helpful to us.
# Change this option to false to disable reporting.
;reporting_enabled = true

# Set to false to disable all checks to https://grafana.net
# for new vesions (grafana itself and plugins), check is used
# in some UI views to notify that grafana or plugin update exists
# This option does not cause any auto updates, nor send any information
# only a GET request to http://grafana.com to get latest versions
;check_for_updates = true

# Google Analytics universal tracking code, only enabled if you specify an id here
;google_analytics_ua_id =

# Google Tag Manager ID, only enabled if you specify an id here
;google_tag_manager_id =

#################################### Security ####################################
[security]
# default admin user, created on startup
admin_user = admin

# default admin password, can be changed before first start of grafana,  or in profile settings
admin_password = root

# used for signing
;secret_key = SW2YcwTIb9zpOOhoPsMm

# disable gravatar profile images
;disable_gravatar = false

# data source proxy whitelist (ip_or_domain:port separated by spaces)
;data_source_proxy_whitelist =

# disable protection against brute force login attempts
;disable_brute_force_login_protection = false

# set to true if you host Grafana behind HTTPS. default is false.
;cookie_secure = false

# set cookie SameSite attribute. defaults to `lax`. can be set to "lax", "strict" and "none"
;cookie_samesite = lax

# set to true if you want to allow browsers to render Grafana in a <frame>, <iframe>, <embed> or <object>. default is false.
;allow_embedding = false

# Set to true if you want to enable http strict transport security (HSTS) response header.
# This is only sent when HTTPS is enabled in this configuration.
# HSTS tells browsers that the site should only be accessed using HTTPS.
# The default version will change to true in the next minor release, 6.3.
;strict_transport_security = false

# Sets how long a browser should cache HSTS. Only applied if strict_transport_security is enabled.
;strict_transport_security_max_age_seconds = 86400

# Set to true if to enable HSTS preloading option. Only applied if strict_transport_security is enabled.
;strict_transport_security_preload = false

# Set to true if to enable the HSTS includeSubDomains option. Only applied if strict_transport_security is enabled.
;strict_transport_security_subdomains = false

# Set to true to enable the X-Content-Type-Options response header.
# The X-Content-Type-Options response HTTP header is a marker used by the server to indicate that the MIME types advertised
# in the Content-Type headers should not be changed and be followed. The default will change to true in the next minor release, 6.3.
;x_content_type_options = false

# Set to true to enable the X-XSS-Protection header, which tells browsers to stop pages from loading
# when they detect reflected cross-site scripting (XSS) attacks. The default will change to true in the next minor release, 6.3.
;x_xss_protection = false

#################################### Snapshots ###########################
[snapshots]
# snapshot sharing options
;external_enabled = true
;external_snapshot_url = https://snapshots-origin.raintank.io
;external_snapshot_name = Publish to snapshot.raintank.io

# remove expired snapshot
;snapshot_remove_expired = true

#################################### Dashboards History ##################
[dashboards]
# Number dashboard versions to keep (per dashboard). Default: 20, Minimum: 1
;versions_to_keep = 20

#################################### Users ###############################
[users]
# disable user signup / registration
;allow_sign_up = true

# Allow non admin users to create organizations
;allow_org_create = true

# Set to true to automatically assign new users to the default organization (id 1)
;auto_assign_org = true

# Default role new users will be automatically assigned (if disabled above is set to true)
;auto_assign_org_role = Viewer

# Background text for the user field on the login page
;login_hint = email or username
;password_hint = password

# Default UI theme ("dark" or "light")
;default_theme = dark

# External user management, these options affect the organization users view
;external_manage_link_url =
;external_manage_link_name =
;external_manage_info =

# Viewers can edit/inspect dashboard settings in the browser. But not save the dashboard.
;viewers_can_edit = false

# Editors can administrate dashboard, folders and teams they create
;editors_can_admin = false

[auth]
# Login cookie name
;login_cookie_name = grafana_session

# The lifetime (days) an authenticated user can be inactive before being required to login at next visit. Default is 7 days,
;login_maximum_inactive_lifetime_days = 7

# The maximum lifetime (days) an authenticated user can be logged in since login time before being required to login. Default is 30 days.
;login_maximum_lifetime_days = 30

# How often should auth tokens be rotated for authenticated users when being active. The default is each 10 minutes.
;token_rotation_interval_minutes = 10

# Set to true to disable (hide) the login form, useful if you use OAuth, defaults to false
;disable_login_form = false

# Set to true to disable the signout link in the side menu. useful if you use auth.proxy, defaults to false
;disable_signout_menu = false

# URL to redirect the user to after sign out
;signout_redirect_url =

# Set to true to attempt login with OAuth automatically, skipping the login screen.
# This setting is ignored if multiple OAuth providers are configured.
;oauth_auto_login = false

#################################### Anonymous Auth ######################
[auth.anonymous]
# enable anonymous access
;enabled = false

# specify organization name that should be used for unauthenticated users
;org_name = Main Org.

# specify role for unauthenticated users
;org_role = Viewer

#################################### Github Auth ##########################
[auth.github]
;enabled = false
;allow_sign_up = true
;client_id = some_id
;client_secret = some_secret
;scopes = user:email,read:org
;auth_url = https://github.com/login/oauth/authorize
;token_url = https://github.com/login/oauth/access_token
;api_url = https://api.github.com/user
;team_ids =
;allowed_organizations =

#################################### Google Auth ##########################
[auth.google]
;enabled = false
;allow_sign_up = true
;client_id = some_client_id
;client_secret = some_client_secret
;scopes = https://www.googleapis.com/auth/userinfo.profile https://www.googleapis.com/auth/userinfo.email
;auth_url = https://accounts.google.com/o/oauth2/auth
;token_url = https://accounts.google.com/o/oauth2/token
;api_url = https://www.googleapis.com/oauth2/v1/userinfo
;allowed_domains =

#################################### Generic OAuth ##########################
[auth.generic_oauth]
enabled = true
name = allen
allow_sign_up = true
client_id = grafana
client_secret = 5aa04783-d2ca-4d30-97e3-e4de01be830f
scopes = openid email name
auth_url = http://192.168.58.132:9080/auth/realms/allen/protocol/openid-connect/auth
token_url = http://192.168.58.132:9080/auth/realms/allen/protocol/openid-connect/token
api_url = http://192.168.58.132:9080/auth/realms/allen/protocol/openid-connect/userinfo
;team_ids =
;allowed_organizations =
;tls_skip_verify_insecure = false
;tls_client_cert =
;tls_client_key =
;tls_client_ca =

; Set to true to enable sending client_id and client_secret via POST body instead of Basic authentication HTTP header
; This might be required if the OAuth provider is not RFC6749 compliant, only supporting credentials passed via POST payload
;send_client_credentials_via_post = false

#################################### Grafana.com Auth ####################
[auth.grafana_com]
;enabled = false
;allow_sign_up = true
;client_id = some_id
;client_secret = some_secret
;scopes = user:email
;allowed_organizations =

#################################### Auth Proxy ##########################
[auth.proxy]
;enabled = false
;header_name = X-WEBAUTH-USER
;header_property = username
;auto_sign_up = true
;ldap_sync_ttl = 60
;whitelist = 192.168.1.1, 192.168.2.1
;headers = Email:X-User-Email, Name:X-User-Name

#################################### Basic Auth ##########################
[auth.basic]
;enabled = true

#################################### Auth LDAP ##########################
[auth.ldap]
;enabled = false
;config_file = /etc/grafana/ldap.toml
;allow_sign_up = true

#################################### SMTP / Emailing ##########################
[smtp]
;enabled = false
;host = localhost:25
;user =
# If the password contains # or ; you have to wrap it with trippel quotes. Ex """#password;"""
;password =
;cert_file =
;key_file =
;skip_verify = false
;from_address = admin@grafana.localhost
;from_name = Grafana
# EHLO identity in SMTP dialog (defaults to instance_name)
;ehlo_identity = dashboard.example.com

[emails]
;welcome_email_on_sign_up = false

#################################### Logging ##########################
[log]
# Either "console", "file", "syslog". Default is console and  file
# Use space to separate multiple modes, e.g. "console file"
;mode = console file

# Either "debug", "info", "warn", "error", "critical", default is "info"
;level = info

# optional settings to set different levels for specific loggers. Ex filters = sqlstore:debug
;filters =

# For "console" mode only
[log.console]
;level =

# log line format, valid options are text, console and json
;format = console

# For "file" mode only
[log.file]
;level =

# log line format, valid options are text, console and json
;format = text

# This enables automated log rotate(switch of following options), default is true
;log_rotate = true

# Max line number of single file, default is 1000000
;max_lines = 1000000

# Max size shift of single file, default is 28 means 1 << 28, 256MB
;max_size_shift = 28

# Segment log daily, default is true
;daily_rotate = true

# Expired days of log file(delete after max days), default is 7
;max_days = 7

[log.syslog]
;level =

# log line format, valid options are text, console and json
;format = text

# Syslog network type and address. This can be udp, tcp, or unix. If left blank, the default unix endpoints will be used.
;network =
;address =

# Syslog facility. user, daemon and local0 through local7 are valid.
;facility =

# Syslog tag. By default, the process' argv[0] is used.
;tag =

#################################### Alerting ############################
[alerting]
# Disable alerting engine & UI features
;enabled = true
# Makes it possible to turn off alert rule execution but alerting UI is visible
;execute_alerts = true

# Default setting for new alert rules. Defaults to categorize error and timeouts as alerting. (alerting, keep_state)
;error_or_timeout = alerting

# Default setting for how Grafana handles nodata or null values in alerting. (alerting, no_data, keep_state, ok)
;nodata_or_nullvalues = no_data

# Alert notifications can include images, but rendering many images at the same time can overload the server
# This limit will protect the server from render overloading and make sure notifications are sent out quickly
;concurrent_render_limit = 5


# Default setting for alert calculation timeout. Default value is 30
;evaluation_timeout_seconds = 30

# Default setting for alert notification timeout. Default value is 30
;notification_timeout_seconds = 30

# Default setting for max attempts to sending alert notifications. Default value is 3
;max_attempts = 3

#################################### Explore #############################
[explore]
# Enable the Explore section
;enabled = true

#################################### Internal Grafana Metrics ##########################
# Metrics available at HTTP API Url /metrics
[metrics]
# Disable / Enable internal metrics
;enabled           = true

# Publish interval
;interval_seconds  = 10

# Send internal metrics to Graphite
[metrics.graphite]
# Enable by setting the address setting (ex localhost:2003)
;address =
;prefix = prod.grafana.%(instance_name)s.

#################################### Distributed tracing ############
[tracing.jaeger]
# Enable by setting the address sending traces to jaeger (ex localhost:6831)
;address = localhost:6831
# Tag that will always be included in when creating new spans. ex (tag1:value1,tag2:value2)
;always_included_tag = tag1:value1
# Type specifies the type of the sampler: const, probabilistic, rateLimiting, or remote
;sampler_type = const
# jaeger samplerconfig param
# for "const" sampler, 0 or 1 for always false/true respectively
# for "probabilistic" sampler, a probability between 0 and 1
# for "rateLimiting" sampler, the number of spans per second
# for "remote" sampler, param is the same as for "probabilistic"
# and indicates the initial sampling rate before the actual one
# is received from the mothership
;sampler_param = 1

#################################### Grafana.com integration  ##########################
# Url used to import dashboards directly from Grafana.com
[grafana_com]
;url = https://grafana.com

#################################### External image storage ##########################
[external_image_storage]
# Used for uploading images to public servers so they can be included in slack/email messages.
# you can choose between (s3, webdav, gcs, azure_blob, local)
;provider =

[external_image_storage.s3]
;bucket =
;region =
;path =
;access_key =
;secret_key =

[external_image_storage.webdav]
;url =
;public_url =
;username =
;password =

[external_image_storage.gcs]
;key_file =
;bucket =
;path =

[external_image_storage.azure_blob]
;account_name =
;account_key =
;container_name =

[external_image_storage.local]
# does not require any configuration

[rendering]
# Options to configure external image rendering server like https://github.com/grafana/grafana-image-renderer
;server_url =
;callback_url =

[enterprise]
# Path to a valid Grafana Enterprise license.jwt file
;license_path =

[panels]
# If set to true Grafana will allow script tags in text panels. Not recommended as it enable XSS vulnerabilities.
;disable_sanitize_html = false

[plugins]
;enable_alpha = false
;app_tls_skip_verify_insecure = false

对应docker运行日志

{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Starting Grafana\" logger=server version=6.2.5 commit=6082d19 branch=HEAD compiled=2019-06-25T17:56:19+0000\n","stream":"stdout","time":"2019-06-30T12:56:12.789968636Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Config loaded from\" logger=settings file=/usr/share/grafana/conf/defaults.ini\n","stream":"stdout","time":"2019-06-30T12:56:12.790014352Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Config loaded from\" logger=settings file=/etc/grafana/grafana.ini\n","stream":"stdout","time":"2019-06-30T12:56:12.790019939Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Config overridden from command line\" logger=settings arg=\"default.paths.data=/var/lib/grafana\"\n","stream":"stdout","time":"2019-06-30T12:56:12.790023608Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Config overridden from command line\" logger=settings arg=\"default.paths.logs=/var/log/grafana\"\n","stream":"stdout","time":"2019-06-30T12:56:12.790027262Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Config overridden from command line\" logger=settings arg=\"default.paths.plugins=/var/lib/grafana/plugins\"\n","stream":"stdout","time":"2019-06-30T12:56:12.790031118Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Config overridden from command line\" logger=settings arg=\"default.paths.provisioning=/etc/grafana/provisioning\"\n","stream":"stdout","time":"2019-06-30T12:56:12.790034741Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Config overridden from command line\" logger=settings arg=\"default.log.mode=console\"\n","stream":"stdout","time":"2019-06-30T12:56:12.790038277Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Config overridden from Environment variable\" logger=settings var=\"GF_PATHS_DATA=/var/lib/grafana\"\n","stream":"stdout","time":"2019-06-30T12:56:12.790041773Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Config overridden from Environment variable\" logger=settings var=\"GF_PATHS_LOGS=/var/log/grafana\"\n","stream":"stdout","time":"2019-06-30T12:56:12.790166429Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Config overridden from Environment variable\" logger=settings var=\"GF_PATHS_PLUGINS=/var/lib/grafana/plugins\"\n","stream":"stdout","time":"2019-06-30T12:56:12.790179393Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Config overridden from Environment variable\" logger=settings var=\"GF_PATHS_PROVISIONING=/etc/grafana/provisioning\"\n","stream":"stdout","time":"2019-06-30T12:56:12.790184341Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Config overridden from Environment variable\" logger=settings var=\"GF_SERVER_ROOT_URL=http://grafana.server.name\"\n","stream":"stdout","time":"2019-06-30T12:56:12.79018827Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Config overridden from Environment variable\" logger=settings var=\"GF_SECURITY_ADMIN_PASSWORD=*********\"\n","stream":"stdout","time":"2019-06-30T12:56:12.790192112Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Path Home\" logger=settings path=/usr/share/grafana\n","stream":"stdout","time":"2019-06-30T12:56:12.79019584Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Path Data\" logger=settings path=/var/lib/grafana\n","stream":"stdout","time":"2019-06-30T12:56:12.790199529Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Path Logs\" logger=settings path=/var/log/grafana\n","stream":"stdout","time":"2019-06-30T12:56:12.790203124Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Path Plugins\" logger=settings path=/var/lib/grafana/plugins\n","stream":"stdout","time":"2019-06-30T12:56:12.790206667Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Path Provisioning\" logger=settings path=/etc/grafana/provisioning\n","stream":"stdout","time":"2019-06-30T12:56:12.790210168Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"App mode production\" logger=settings\n","stream":"stdout","time":"2019-06-30T12:56:12.790213721Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Initializing SqlStore\" logger=server\n","stream":"stdout","time":"2019-06-30T12:56:12.798163369Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Connecting to DB\" logger=sqlstore dbtype=postgres\n","stream":"stdout","time":"2019-06-30T12:56:12.798197812Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Starting DB migration\" logger=migrator\n","stream":"stdout","time":"2019-06-30T12:56:12.8014783Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=info msg=\"Executing migration\" logger=migrator id=\"Update user table charset\"\n","stream":"stdout","time":"2019-06-30T12:56:12.819771101Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=eror msg=\"Executing migration failed\" logger=migrator id=\"Update user table charset\" error=\"pq: relation \\\"UQE_user_login\\\" already exists\"\n","stream":"stdout","time":"2019-06-30T12:56:12.82479527Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=eror msg=\"Exec failed\" logger=migrator error=\"pq: relation \\\"UQE_user_login\\\" already exists\" sql=\"ALTER TABLE \\\"user\\\" ALTER \\\"login\\\" TYPE VARCHAR(190), ALTER \\\"email\\\" TYPE VARCHAR(190), ALTER \\\"name\\\" TYPE VARCHAR(255), ALTER \\\"password\\\" TYPE VARCHAR(255), ALTER \\\"salt\\\" TYPE VARCHAR(50), ALTER \\\"rands\\\" TYPE VARCHAR(50), ALTER \\\"company\\\" TYPE VARCHAR(255), ALTER \\\"theme\\\" TYPE VARCHAR(255);\"\n","stream":"stdout","time":"2019-06-30T12:56:12.82483477Z"}
{"log":"t=2019-06-30T12:56:12+0000 lvl=eror msg=\"Server shutdown\" logger=server reason=\"Service init failed: Migration failed err: pq: relation \\\"UQE_user_login\\\" already exists\"\n","stream":"stdout","time":"2019-06-30T12:56:12.82740865Z"}

 

解决方案!pgsql版本换成11.3
通过 Keycloak + Pgsql 实现 Grafana 单点登录

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 9
    评论
评论 9
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

AllenLeungX

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值