Commit Graph

340 Commits

Author SHA1 Message Date
bergquist
a2d47427ba separate plugin impl and proto files 2017-12-07 16:33:36 +01:00
bergquist
3f5daa5e58 add hclog wrapper for grafanas logger in plugins 2017-12-07 16:33:36 +01:00
bergquist
0f6c470e03 add go-plugin deps to vendor 2017-12-07 16:33:36 +01:00
bergquist
d69b63cbc0 dashboards as cfg: read first cfg version 2017-12-07 15:27:01 +01:00
bergquist
17bf87fb62 typo 💥 2017-12-01 14:05:47 +01:00
bergquist
7a497fd617 move systemd ready notification to server.go 2017-12-01 14:02:05 +01:00
Johannes Grassler
d28ca54129 Use systemd notification where applicable
With this change in place, the grafana service will signal
readiness to serve by writing "READY=1" to the path specified
through the NOTIFY_SOCKET environment variable. If this
environment variable is not present or empty, no notification
will happen. This notification is the standard systemd
mechanism for indicating a service is ready to serve. For
Grafana this may be a couple of seconds from startup due to
database migrations. This change also adjusts the Grafana
systemd service definition to make use of this feature.
2017-12-01 10:31:58 +01:00
bergquist
6267ef1391 datasource as cfg: fixes typos 2017-11-15 14:30:32 +01:00
bergquist
ebbfc529e0 datasource as cfg: support globbing 2017-11-15 14:30:32 +01:00
bergquist
665df676a5 datasource as cfg: rename feature to provisioning 2017-11-15 14:30:32 +01:00
bergquist
c9bfa781fd datasource as cfg: improve name for this feature 2017-11-15 14:30:32 +01:00
bergquist
930da63173 datasource as cfg: setting for purging datasources not in cfg 2017-11-15 14:30:32 +01:00
bergquist
39b6c04643 datasource as cfg: basic implementation 2017-11-15 14:30:32 +01:00
bergquist
dea631bedc tech: remove rabbitmq event publisher
closes #9645
2017-10-24 14:10:23 +02:00
Carl Bergquist
9d53653647 Merge pull request #9378 from mattbostock/verify_tls
Bugfix: Always verify TLS unless explicitly told otherwise
2017-10-12 11:11:02 +02:00
Daniel Lee
d1c9760fa8 Postgres Data Source (#9475)
* add postgresql datasource

* add rest of files for postgres datasource

* fix timeseries query, remove unused code

* consistent naming, refactoring

* s/mysql/postgres/

* s/mysql/postgres/

* couple more tests

* tests for more datatypes

* fix macros for postgres

* add __timeSec macro

* add frontend for postgres datasource

* adjust documentation

* fix formatting

* add proper plugin description

* merge editor changes from mysql

* port changes from mysql datasource

* set proper defaultQuery for postgres

* add time_sec to timeseries query
accept int for value for timeseries query

* revert allowing time_sec and handle int or float values as unix
timestamp for "time" column

* fix tslint error

* handle decimal values in timeseries query

* allow setting sslmode for postgres datasource

* use type switch for handling data types

* fix value for timeseries query

* refactor timeseries queries to make them more flexible

* remove debug statement from inner loop in type conversion

* use plain for loop in getTypedRowData

* fix timeseries queries

* adjust postgres datasource to tsdb refactoring

* adjust postgres datasource to frontend changes

* update lib/pq to latest version

* move type conversion to getTypedRowData

* handle address types cidr, inet and macaddr

* adjust response parser and docs for annotations

* convert unknown types to string

* add documentation for postgres datasource

* add another example query with metric column

* set more helpful default query

* update help text in query editor

* handle NULL in value column of timeseries query

* add __timeGroup macro

* add test for __timeGroup macro

* document __timeGroup and set proper default query for annotations

* fix typos in docs

* add postgres to list of datasources

* add postgres to builtInPlugins

* mysql: refactoring as prep for merging postgres

Refactors out the initialization of the xorm engine and the query logic
for an sql data source.

* mysql: rename refactoring + test update

* postgres:refactor to use SqlEngine(same as mysql)

Refactored to use a common base class with the MySql data source.

Other changes from the original PR:
- Changed time column to be time_sec to allow other time units in the
future and to be the same as MySQL
- Changed integration test to test the main Query method rather than
the private transformToTable method
- Changed the __timeSec macro name to __timeEpoch
- Renamed PostgresExecutor to PostgresQueryEndpoint

Fixes #9209 (the original PR)

* postgres: encrypt password on config page

With some other cosmetic changes to the config page:
- placeholder texts
- reset button for the password after it has been encrypted.
- default value for the sslmode field.

* postgres: change back col name to time from time_sec

* postgres mysql: remove annotation title

Title has been removed from annotations

* postgres: fix images for docs page

* postgres mysql: fix specs
2017-10-10 15:19:14 +02:00
Matt Bostock
16c5d0e4b7 Always verify TLS unless explicitly told otherwise
TLS was not being verified in a number of places:

- connections to grafana.com

- connections to OAuth providers when TLS client authentication was
  enabled

- connections to self-hosted Grafana installations when using the CLI
  tool

TLS should always be verified unless the user explicitly enables an
option to skip verification.

Removes some instances where `InsecureSkipVerify` is explicitly set to
`false`, the default, to help avoid confusion and make it more difficult
to regress on this fix by accident.

Adds a `--insecure` flag to `grafana-cli` to skip TLS verification.

Adds a `tls_skip_verify_insecure` setting for OAuth.

Adds a `app_tls_skip_verify_insecure` setting under a new `[plugins]`
section.

I'm not super happy with the way the global setting is used by
`pkg/api/app_routes.go` but that seems to be the existing pattern used.
2017-10-06 17:09:27 +01:00
Mitsuhiro Tanda
39607d09d7 (cloudwatch) alerting 2017-09-29 13:44:00 +09:00
Carl Bergquist
e9e8ffc769 Merge pull request #9367 from bobrik/dualstack
Enable dualstack in every net.Dialer, fixes #9364
2017-09-28 11:15:49 +02:00
Ivan Babrou
9a4ae30227
Enable dualstack in every net.Dialer, fixes #9364
Default transport enables it:

* https://github.com/golang/go/blob/d2826d3e06/src/net/http/transport.go#L42-L46

```
    DialContext: (&net.Dialer{
	Timeout:   30 * time.Second,
	KeepAlive: 30 * time.Second,
	DualStack: true,
    }).DialContext,
```

See also: https://github.com/golang/go/issues/15324
2017-09-27 22:29:48 -07:00
bergquist
2ed753232f internal metrics: add grafana version 2017-09-26 15:25:44 +02:00
Carl Bergquist
63f78c0b59 Merge pull request #9299 from seuf/grafana-cli-plugin-url
Added --pluginUrl option to grafana-cli for local network plugin inst…
2017-09-22 13:13:17 +02:00
bergquist
0229d28d64 remove unused structs 2017-09-21 15:02:17 +02:00
bergquist
6c7454fc2b tag alert queries that return no_data 2017-09-18 14:53:30 +02:00
bergquist
a234e894bb makes jaeger tracing configurable 2017-09-18 11:08:58 +02:00
bergquist
2e350bbb8e adds basic traces using open traces 2017-09-18 11:08:58 +02:00
THIERRY SALLE
e978bfc368 Added --pluginUrl option to grafana-cli for local network plugin installation 2017-09-15 20:34:08 +02:00
bergquist
6b1ae1a8a8 use internal init for settings 2017-09-14 14:26:32 +02:00
bergquist
788f677ed7 remove old internal metrics lib 2017-09-14 14:26:32 +02:00
Torkel Ödegaard
284cacf560 logging: write pid file path and pid during startup 2017-09-04 12:44:54 +02:00
Torkel Ödegaard
c3cffeb10c packaging: fixed issue with pid file on systemd systems, fixes #9133 2017-09-04 10:43:04 +02:00
Alexander
35522c475f Fix #8998 by not overriding GOMAXPROCS (#8999) 2017-08-07 15:02:04 +02:00
Daniel Lee
6ec1d16327 fix: cli admin reset-password fixes cmd args
Fixes the homepath and config command line args. This allows the
command to be used even when the homepath is different from the
default.

Fixes #7730
2017-04-20 13:30:17 +02:00
Daniel Lee
3ca3c96226 profiling: adds profiling and tracing
If grafana-server binary is started with the -profile flag then
tracing will create a trace.out file and pprof data can be accessed
on the 6060 port.

A custom port for pprof profiling can be set with the -profile-port
flag.
2017-04-11 10:32:18 +02:00
Torkel Ödegaard
8f90c6115d mysql: progress on mysql data source 2017-03-29 22:54:18 +02:00
Torkel Ödegaard
4d4e165be7 links: updated links from grafana.net to grafana.com 2017-03-20 10:20:32 +01:00
bergquist
cf871b1284 http: close http server gracefully. 2017-02-17 10:33:47 +01:00
bergquist
52566376b2 tech(server): remove unused code 2017-02-17 10:18:11 +01:00
Kevin Bowling
0c46def1a0 Add an idiomatic plugin path for FreeBSD (#7410) 2017-01-31 14:54:53 +01:00
Torkel Ödegaard
8a95c563bb Merge branch 'master' into websocket 2017-01-31 08:56:49 +01:00
Torkel Ödegaard
40d39f8a3e refactor(): renaming alerting hide ui option, #7318 2017-01-25 13:32:26 +01:00
Torkel Ödegaard
fad07f0d15 refactor(http): refactoring http server 2016-12-21 14:36:32 +01:00
bergquist
99e3db8208 Merge branch 'master' into alerting_mqe 2016-12-12 19:01:50 +01:00
bergquist
96e8ecfa7b feat(cli): adds command to reset admin password
closes #5479
2016-12-09 15:25:02 +01:00
bergquist
cd85e1f651 Merge branch 'master' into cli_db_commands 2016-12-09 12:36:05 +01:00
bergquist
ba7a990f86 tech: bump version in server cli 2016-12-09 12:30:36 +01:00
Torkel Ödegaard
cc46b81961 fix(rendering): fixed server side rendering issue when sertting enforce_domain to true, fixes #6769 2016-12-05 11:20:01 +01:00
Torkel Ödegaard
7e831e10a2 updated version in grafana-server main.go 2016-11-29 10:41:31 -05:00
bergquist
bd3259d07a feat(mqe): init commit 2016-11-09 15:55:47 +01:00
bergquist
578507ae77 tech(cli): add default settings for transport 2016-11-01 08:58:44 +01:00
David Moravek
c6257b30c1 Take grafana-cli proxy settings from env 2016-10-31 23:14:48 +01:00
bergquist
6e65c93203 fix(cli): improve error handling 2016-10-21 16:03:02 +02:00
bergquist
2df8c649b7 Merge branch 'master' into alerting_opentsdb 2016-10-19 13:15:22 +02:00
Torkel Ödegaard
04c23ef322 fix(SIGHUP): ignore SIGHUP syscall, fixes #6276 2016-10-14 14:23:22 +02:00
bergquist
455df7f0a0 Merge branch 'master' into alerting_opentsdb 2016-10-14 09:17:35 +02:00
bergquist
2e4ca64783 fix(cli): improve error handling
closes #6256
2016-10-12 22:31:28 +02:00
Carl Bergquist
b0d154d5aa Merge pull request #6221 from grafana/alerting_influxdb
Alerting support for influxdb
2016-10-10 14:32:47 +02:00
bergquist
04f417a423 feat(alerting): enabled by default. configurable elert engine
closes #6210
2016-10-10 13:09:16 +02:00
bergquist
e556df5b49 feat(tsdb): add draft implementation for influxdb 2016-10-04 16:25:33 +02:00
bergquist
1606b74fce tech(opentsdb): add init ref for opentsdb 2016-10-03 10:59:09 +02:00
bergquist
36f0bf0e1e chore(web): Improve error message for invalid SSL configuration 2016-10-03 08:47:36 +02:00
Torkel Ödegaard
2c4524bbfd fix(logging): minor logging fix 2016-09-30 13:25:54 +02:00
Torkel Ödegaard
24a25453f6 fix(server): shutdown logging fixes 2016-09-30 10:18:19 +02:00
Torkel Ödegaard
86b546c21d refactor(main): refactoring main grafana server / startup code 2016-09-30 08:36:20 +02:00
Torkel Ödegaard
71e2c6f6ef refactor(backend): refactoring management of go routines in backend 2016-09-28 21:06:00 +02:00
bergquist
991539e410 style(go_routines): improve variable naming 2016-09-28 13:35:24 +02:00
bergquist
34b31aeef8 tech(goroutines): sync state between different go routines 2016-09-27 16:47:17 +02:00
bergquist
dbb7852f21 feat: purge old files and snapshots
closes #4087
closes #2172
2016-09-26 14:33:40 +02:00
Mauro Stettler
b063cf0a6e fix typo 2016-09-22 20:44:57 +01:00
bergquist
d2fb660557 fix(cli): remove unused logging 2016-09-20 10:10:27 +02:00
bergquist
3f00834f25 tech: remove unused dependencies 2016-09-19 15:21:53 +02:00
bergquist
3c92f78ee7 feat(cli): add grafana version header to all request against grafana.net 2016-09-15 16:01:06 +02:00
bergquist
3c966caa23 feat(cli): download all plugin dependencies 2016-09-15 14:38:11 +02:00
bergquist
e7b56c6389 tech(metrics): move all request counters into one middleware 2016-09-09 13:28:19 +02:00
bergquist
645293e590 fix(cli): improve error message for upgrade-all
closes #5885
2016-08-30 13:47:42 +02:00
bergquist
5d821d3492 style(cli): minor fix 2016-08-24 20:27:41 +02:00
bergquist
c087445d51 feat(cli): add db command to cli. 2016-08-24 15:46:26 +02:00
Torkel Ödegaard
05697d5ecd Merge branch 'master' into alerting
Conflicts:
	conf/sample.ini
2016-08-17 10:03:33 +02:00
bergquist
7a913f77d3 feat(cli): add default plugin folder for MAC OS
closes #5806
2016-08-15 08:54:35 +02:00
Torkel Ödegaard
ae5f8a76d9 feat(alerting): lots of progress on notifications, refactored them out to their own package, restored webhook notitication and added slack notification 2016-07-27 12:09:55 +02:00
Torkel Ödegaard
77c66a88d9 Merge branch 'master' into alerting 2016-07-27 10:22:00 +02:00
Mark Henderson
39be7cf7d7 Added grafana-cli command. Added public documentation for specifying plugin version when installing. (#5665) 2016-07-27 09:41:33 +02:00
Torkel Ödegaard
d9096110f8 Merge branch 'master' into alerting
Conflicts:
	pkg/api/dashboard.go
	pkg/models/dashboards.go
	pkg/services/sqlstore/dashboard.go
2016-07-11 18:28:07 +02:00
bergquist
af216ecf83 tech(cli): remove loop and head straight for plugindir 2016-06-26 03:47:15 +02:00
bergquist
07be2c89a3 tech(cli): lets use the fact that we have a compiler 2016-06-26 03:47:15 +02:00
Torkel Ödegaard
346ca3fc89 Merge branch 'master' into alerting 2016-06-25 09:56:57 -04:00
bergquist
af1c8dc5d9 feat(cli): adds support for dist/plugin.json location for plugins
ref #5410
2016-06-23 08:35:40 +02:00
bergquist
2123fbdf9b feat(cli): make remove command an alias for uninstall 2016-06-23 08:21:55 +02:00
Torkel Ödegaard
0667d73660 Merge branch 'new-logger' into alerting_definitions
Conflicts:
	pkg/api/api.go
	pkg/setting/setting.go
2016-06-07 13:31:56 +02:00
Torkel Ödegaard
3dc7706c45 feat(loggin): improved http request panic handling 2016-06-07 10:05:10 +02:00
Torkel Ödegaard
9741af2031 feat(logging): progress on new logging #4590 2016-06-07 09:29:47 +02:00
Torkel Ödegaard
22778e6efd feat(logging): a lot of progress on moving to new logging lib, #4590 2016-06-06 23:06:44 +02:00
Torkel Ödegaard
f36a44c49a Merge branch 'master' into alerting_definitions
Conflicts:
	conf/defaults.ini
	pkg/api/dashboard.go
2016-06-06 08:43:01 +02:00
Torkel Ödegaard
064e474b0a Merge branch 'metrics_reporting' 2016-06-03 18:06:41 +02:00
Carl Bergquist
236aed112f Merge pull request #5255 from dakerfp/patch-1
Unify signal registration in a single syscall.
2016-06-03 14:59:42 +02:00
bergquist
65eb373808 Merge branch 'master' into alerting_definitions 2016-06-03 13:48:36 +02:00
bergquist
3d7facf6ee fix(cli): fixes broken import 2016-06-03 13:40:48 +02:00
Torkel Ödegaard
eee49a4995 feat(instrumentation): added meter, histogram and new timer, timer now send p25, p75, p90, p99 percentiles in 1000 sample exp decaying sample 2016-06-03 12:50:51 +02:00
bergquist
6de1399cf0 fix(cli): fixes broken import 2016-06-03 12:35:17 +02:00
bergquist
d0ac258474 Merge branch 'master' into alerting_definitions 2016-06-03 12:22:46 +02:00
bergquist
15aeb4aec2 tech(cli): rename log to logger to separate from server logger 2016-06-03 12:22:30 +02:00
Torkel Ödegaard
6b2a4fe8e8 feat(instrumentation): work on settings model for internal metrics publishing, #4696 2016-06-02 14:32:17 +02:00
Daker Fernandes Pinheiro
48e4de823a Unify signal registration in a single syscall. 2016-06-02 01:34:37 -03:00
bergquist
1686d86c3b Merge branch 'master' into alerting_definitions 2016-05-30 08:26:08 +02:00
Torkel Ödegaard
10c47ee27c feat(footer): some minor changes to footer to make it look good in light theme, closes #4889 2016-05-24 08:11:28 +02:00
bergquist
f05cae23d2 feat(alerting): alert rule selector 2016-05-23 10:07:04 +02:00
bergquist
9d016a2756 feat(alerting): add migration for create and update 2016-05-20 14:23:24 +02:00
Torkel Ödegaard
c133a00125 feat(alerting): minor progress on scheduler 2016-05-17 14:31:52 +02:00
Dan Cech
9f9f4e7fef use new plugin-specific repo route when installing or updating a single plugin (#4992) 2016-05-12 10:43:31 +02:00
bergquist
07b13e24fa style(cli): add some color to error messages 2016-04-23 14:39:42 +02:00
bergquist
0855f51436 feat(cli): improves defer error handling 2016-04-23 14:39:42 +02:00
bergquist
70acfb2cfd fix(cli): adds better help text.
The zip lib is throwing panics sometimes when the response is malformed.
The cli will now try to download the zip file up to three times before
aborting. The cli gives a better error message and informes the user
about retrying.

closes #4651
2016-04-23 14:39:42 +02:00
Carl Bergquist
9f4ad73698 Merge pull request #4758 from bergquist/cli_local_pluginfolder
CLI: Adds support for local plugin folder
2016-04-19 17:30:01 +02:00
bergquist
ff22f43002 fix(cli): fixes missplaced % 2016-04-19 14:46:03 +02:00
bergquist
d38d4efc18 style(cli): improve logging to find install crash 2016-04-19 10:39:55 +02:00
bergquist
a8c68e33db feat(cli): add more logging for failed install 2016-04-19 10:22:02 +02:00
bergquist
903d1b7797 tech(cli): dont use defer statements in loops 2016-04-19 09:13:58 +02:00
bergquist
5abaf26b5f style(cli): remove some logging 2016-04-19 08:39:22 +02:00
bergquist
485a377800 fix(cli): adds support for local plugin folder
closes #4572
2016-04-19 08:27:26 +02:00
Torkel Ödegaard
d98839fc19 Revert "feat(cli): detects plugin folder for dev env"
This reverts commit a5eda6a87b.
2016-04-15 09:01:27 -04:00
Torkel Ödegaard
e7626befc5 updated version 2016-04-12 10:17:39 -04:00
Torkel Ödegaard
497e9343aa Merge branch 'pluginlist' 2016-04-11 21:10:54 -04:00
Torkel Ödegaard
f93b039e42 change(grafana-cli): changed upgrade to update in command line, upgrade and upgrade-all will still work as aliases 2016-04-11 18:05:28 -04:00
bergquist
a5eda6a87b feat(cli): detects plugin folder for dev env
closes #4572
2016-04-11 22:32:46 +02:00
bergquist
eeb7524c0f feat(cli): improve helptext for cli 2016-04-11 14:50:34 +02:00
bergquist
2fd25f0093 feat(cli): add uninstall alias for remove 2016-04-11 14:49:12 +02:00
bergquist
583c0f09a8 feat(cli): adds better support for plugin folder in dev 2016-04-08 11:59:45 +02:00
bergquist
676e950fa3 fix(cli): improve error message for not using sudo
closes #4562
2016-04-05 15:37:09 +02:00
Anthony Woods
036f407d6a gofmt 2016-03-29 16:04:24 +08:00
Anthony Woods
2c60dbd4fb handle errors when requesting plugin list. fixes #4494 2016-03-29 15:35:08 +08:00
Torkel Ödegaard
1e44ee9e9b feat(grafana-cli): minor changes 2016-03-28 21:42:26 +02:00
Anthony Woods
776af45c09 update default repo url in grafana-cli 2016-03-28 23:36:27 +08:00
bergquist
14df3c6249 feat(cli): use built in envvar support 2016-03-21 10:11:08 +01:00
bergquist
7f8643efde feat(cli): make all plugin commands subcommands 2016-03-21 10:01:07 +01:00
bergquist
1a11f1e8c6 Merge branch 'master' into cli_colors 2016-03-16 14:17:35 +01:00
bergquist
a12f5376b5 feat(cli): adds some colors to ls command 2016-03-16 14:09:30 +01:00
bergquist
8e70e9c1c3 feat(cli): improve error message for missing permission 2016-03-13 11:29:43 +01:00
bergquist
740478344b Merge branch 'master' into cli_colors 2016-03-11 14:43:12 +01:00
bergquist
5094c1db2a feat(cli): improves error message for 401 requests 2016-03-11 14:34:48 +01:00
bergquist
f5bb2b11e5 feat(cli): improve error handling for missing plugin dir 2016-03-11 14:11:25 +01:00
bergquist
8da702c2e7 feat(cli): add grafana net url 2016-03-11 13:59:09 +01:00
bergquist
95de5f6fe1 feat(cli): adds some amazing colors 2016-03-10 17:33:44 +01:00
bergquist
788aafff3c feat(cli): disable dependecy downloads until needed 2016-03-10 17:16:01 +01:00
bergquist
fee0745e98 feat(cli): support for asking grafana net about plugins 2016-03-10 16:25:34 +01:00
bergquist
6670e6cd29 feat(cli): allow redirect for plugin-repo.json 2016-03-09 16:10:46 +01:00
bergquist
95f3e52064 feat(cli): use commandline object all the way 2016-03-08 14:54:18 +01:00
bergquist
2fcb8b849e style(cli): fixed typos 2016-03-08 14:30:25 +01:00
bergquist
d7a72e30c0 gofmt 2016-03-08 13:29:42 +01:00
bergquist
f397d0ddd7 fix(cli): retry download when panicing
Will retry to download plugins once if the zip lib panics.

closes #4068
2016-03-08 13:16:58 +01:00
bergquist
1a6af064b0 fix(cli): improve logging when folders does not exists 2016-03-07 16:41:22 +01:00