Commit Graph

3811 Commits

Author SHA1 Message Date
Leonard Gram
275f613050 Only authenticate logins when password is set (#13147)
* auth: never authenticate passwords shorter than 4 chars.

* auth: refactoring password length check.

* auth: does not authenticate when password is empty.

* auth: removes unneccesary change.
2018-09-05 12:12:46 +02:00
Anthony Woods
5c0fbbf7c8 improve remote image rendering (#13102)
* improve remote image rendering

- determine "domain" during Init() so we are not re-parsing settings
  on every request
- if using http-mode via a rednererUrl, then use the AppUrl for the
  page that the renderer loads.  When in http-mode the renderer is likely
  running on another server so trying to use the localhost or even the
  specific IP:PORT grafana is listening on wont work.
- apply the request timeout via a context rather then directly on the http client.
- use a global http client so we can take advantage of connection re-use
- log and handle errors better.

* ensure imagesDir exists

* allow users to define callback_url for remote rendering

- allow users to define the url that a remote rendering service
  should use for connecting back to the grafana instance.
  By default the "root_url" is used.

* improve remote image rendering

- determine "domain" during Init() so we are not re-parsing settings
  on every request
- if using http-mode via a rednererUrl, then use the AppUrl for the
  page that the renderer loads.  When in http-mode the renderer is likely
  running on another server so trying to use the localhost or even the
  specific IP:PORT grafana is listening on wont work.
- apply the request timeout via a context rather then directly on the http client.
- use a global http client so we can take advantage of connection re-use
- log and handle errors better.

* ensure imagesDir exists

* allow users to define callback_url for remote rendering

- allow users to define the url that a remote rendering service
  should use for connecting back to the grafana instance.
  By default the "root_url" is used.

* rendering: fixed issue with renderKey where userId and orgId was in mixed up, added test for RenderCallbackUrl reading logic
2018-09-04 13:42:55 +02:00
maicon
a6aa219895 Reopen log files after receiving a SIGHUP signal (#13112)
* Reopen log files after receiving a SIGHUP signal

Implements a system signals listener in log.FileLogWriter.

After receiving a SIGHUP signal from the system, the listener will close the current log file and then open it again.

The listener will finishes after receiving a SIGINT, SIGKILL or SIGTERM signal.

Closes grafana/grafana#2497

* Move the SIGHUP handling to the main file
2018-09-04 10:31:41 +02:00
Carl Bergquist
ee1083d9b4 cli: avoid rely on response.ContentLength (#13120)
response.ContentLength might be invalid if the http response
is chunked.

fixes #13079
2018-09-03 20:33:21 +02:00
Marcus Efraimsson
1ceca5d8ec
Merge pull request #12145 from grafana/alerting_reminder
Alerting notification reminder
2018-09-03 14:41:38 +02:00
Jasper Lievisse Adriaanse
d668a922e6 Return correct path for OpenBSD in cli's returnOsDefault (#13089) 2018-08-30 11:56:52 +02:00
bergquist
12c9860882 string formating fixes 2018-08-28 22:33:38 +02:00
bergquist
ff7b0d4f63 go fmt fixes 2018-08-28 22:14:15 +02:00
Marcus Efraimsson
eba147c1a3
change/add tests for alerting notification reminders 2018-08-24 19:09:19 +02:00
Marcus Efraimsson
34e448c6d4
Merge remote-tracking branch 'origin/master' into alerting_reminder 2018-08-22 18:08:50 +02:00
Torkel Ödegaard
92ed1f04af sql: added code migration type 2018-08-21 13:53:04 +02:00
Marcus Efraimsson
dfa5d17670
don't write to notification journal when testing notifier/rule 2018-08-20 16:27:13 +02:00
Marcus Efraimsson
86bc462bc1
remove unnecessary conversion (metalinter) 2018-08-20 13:35:36 +02:00
Marcus Efraimsson
3350a3477d
fix after merge with master 2018-08-20 13:31:06 +02:00
Marcus Efraimsson
6d2136b853
Merge remote-tracking branch 'origin/master' into alerting_reminder 2018-08-20 13:29:30 +02:00
Daniel Lee
c75e071213 dsproxy: interpolate route url
Allows for dynamic urls for plugin routes. There are a few plugins
where the route url should be configurable and this change allows
using jsonData fields in the url field for a route in the
plugin.json file for a plugin.
2018-08-18 16:02:49 +02:00
Leonard Gram
da2822c88d alerting: inline docs for the slack channel.
Related to #12944
2018-08-17 16:49:27 +02:00
Marcus Efraimsson
88b96fbd15
Merge pull request #12921 from grafana/12229_provisioning
Provisioning: Should allow one default datasource per organisation
2018-08-17 15:37:32 +02:00
Marcus Efraimsson
0a7be2618e
cleaning up test data 2018-08-17 15:00:37 +02:00
Marcus Efraimsson
313a8bd033
Merge pull request #12891 from svenklemm/unixepochgroup
add $__unixEpochGroup and $__unixEpochGroupAlias to sql datasources
2018-08-17 14:41:33 +02:00
Marcus Efraimsson
8af80b323a
Merge pull request #12909 from grafana/ds-user-agent
Set User-Agent header in datasource proxied requests
2018-08-15 16:59:29 +02:00
Marcus Efraimsson
13921902b5
Set User-Agent header in all proxied datasource requests
Header value will be Grafana/%version%, i.e. Grafana/5.3.0
2018-08-15 09:46:59 +02:00
Marcus Efraimsson
aed89b49c0
should allow one default datasource per organisation using provisioning 2018-08-14 14:48:14 +02:00
Benoît Knecht
ce804e9981 social: gitlab_oauth: set user ID in case email changes
Set `BasicUserInfo.Id` in the value returned by
`SocialGitlab.UserInfo()`, in case the email address of the user changes
in GitLab. That way, the user association won't be lost in Grafana.
2018-08-14 14:11:48 +02:00
Benoît Knecht
7ec146df99 social: add GitLab authentication backend
GitLab could already be used as an authentication backend by properly
configuring `auth.generic_oauth`, but then there was no way to authorize
users based on their GitLab group membership.

This commit adds a `auth.gitlab` backend, similar to `auth.github`, with
an `allowed_groups` option that can be set to a list of groups whose
members should be allowed access to Grafana.
2018-08-14 14:11:48 +02:00
Marcus Efraimsson
74077be19e
Merge pull request #12680 from svenklemm/timebucket
[postgres] add timescaledb option to postgres datasource
2018-08-14 12:12:43 +02:00
Sven Klemm
837388d13e Use variable in newPostgresMacroEngine 2018-08-14 09:44:58 +02:00
Torkel Ödegaard
4f704cec53 fix: ds_proxy test not initiating header 2018-08-14 09:18:23 +02:00
Sven Klemm
3955133f7e Don't pass datasource to newPostgresMacroEngine 2018-08-14 09:15:24 +02:00
Sven Klemm
3552a4cb86 refactor timescaledb handling in MacroEngine 2018-08-14 08:47:33 +02:00
Torkel Ödegaard
2459b177f9 change: Set User-Agent to Grafana/%Version% Proxied-DS-Request %DS-Type% in all proxied ds requests 2018-08-13 18:09:01 +02:00
Marcus Efraimsson
4cebf38ff2
Merge pull request #12807 from nyxi/master
Support client certificates for LDAP servers
2018-08-13 15:48:39 +02:00
Torkel Ödegaard
f2b1fabd5c
fix: Alerting rendering timeout was 30 seconds, same as alert rule eval timeout, this should be much lower so the rendering timeout does not timeout the rule context, fixes #12151 (#12903) 2018-08-13 15:38:28 +02:00
Marcus Efraimsson
d110343e53
Merge pull request #12838 from grafana/12476-show-teams-on-profile
show teams on profile
2018-08-13 15:16:04 +02:00
Sven Klemm
8c4d59363e add $__unixEpochGroup to mssql datasource 2018-08-13 12:23:42 +02:00
Sven Klemm
fbc67a1c64 add $__unixEpochGroup to mysql datasource 2018-08-13 12:17:05 +02:00
Sven Klemm
bfe28ee061 Add $__unixEpochGroup macro to postgres datasource 2018-08-13 12:08:14 +02:00
Sven Klemm
d81a23becf Refactor setting fillmode
This adds SetupFillmode to the tsdb package to be used by the sql
datasources.
2018-08-12 10:51:58 +02:00
Sven Klemm
d2984f3b0f fix rebase error 2018-08-09 10:14:14 +02:00
Sven Klemm
c3aad10047 change timescaledb to checkbox instead of select 2018-08-09 10:05:35 +02:00
Sven Klemm
b987aee7cf add timescaledb option to postgres datasource
This adds an option to the postgres datasource config for
timescaledb support. When set to auto it will check for
timescaledb when testing the datasource.

When this option is enabled the $__timeGroup macro will
use the time_bucket function from timescaledb to group
times by an interval.

This also passes the datasource edit control to testDatasource
to allow for setting additional settings, this might be useful
for other datasources aswell which have optional or version
dependant features which can be queried.
2018-08-09 10:05:35 +02:00
Marcus Efraimsson
8952137ea2
Merge pull request #12753 from svenklemm/sql-fillmode-last
Add fill mode to fill in previously seen value when point is missing to SQL datasources
2018-08-08 10:29:56 +02:00
Marcus Efraimsson
beddfdd86b
add api route for retrieving teams of signed in user 2018-08-08 10:26:05 +02:00
Marcus Efraimsson
89298d0cf5
Merge pull request #12815 from tariq1890/url_query_fix
Fixing bug in url query reader and added test cases
2018-08-08 09:18:32 +02:00
tariq1890
e8dfbe94b1 Fixing bug in url query reader and added test cases 2018-08-07 18:43:59 -07:00
Sven Klemm
ee7602ec1f change fillmode from last to previous 2018-08-07 21:01:41 +02:00
Marcus Efraimsson
eb1b9405b2
return proper payload from api when updating datasource 2018-08-07 17:56:02 +02:00
Emil Flink
5bea54eaaa Support client certificates for LDAP servers 2018-08-03 12:00:20 +02:00
Sven Klemm
bfc66a7ed0 add fillmode "last" to sql datasource
This adds a new fill mode last (last observation carried forward) for grafana
to the sql datasources. This fill mode will fill in the last seen value in a
series when a timepoint is missing or NULL if no value for that series has
been seen yet.
2018-08-02 20:35:09 +02:00
Marcus Efraimsson
5cca478656
Merge pull request #12760 from svenklemm/postgres-timegroup
remove alias from postgres $__timeGroup macro

add $__timeGroupAlias macro to all sql datasources
2018-08-02 16:36:01 +02:00
Marcus Efraimsson
4962bf9d44
remove info logging 2018-08-02 15:49:50 +02:00
Alban Perillat-Merceroz
f3d400f1a7 Add new Redshift metrics and dimensions for Cloudwatch datasource
AWS/Redshift has new dimensions (`latency`, `service class`, `wmlid`) and metrics (`QueriesCompletedPerSecond`, `QueryRuntimeBreakdown`, `QueryDuration`,  `WLMQueriesCompletedPerSecond`, `WLMQueryDuration`, `WLMQueueLength`) in Cloudwatch: https://docs.aws.amazon.com/AmazonCloudWatch/latest/monitoring/rs-metricscollected.html
2018-08-02 14:45:24 +02:00
Sven Klemm
b71d10a7a4 add $__timeGroupAlias to mysql and mssql 2018-08-01 20:58:51 +02:00
Sven Klemm
dc22e24642 add compatibility code to handle pre 5.3 usage 2018-08-01 15:06:18 +02:00
Marcus Efraimsson
951679d50b
Merge pull request #12561 from activeshadow/aws-rds-burst-balance
Added BurstBalance metric to list of AWS RDS metrics.
2018-08-01 12:28:15 +02:00
Sven Klemm
42f1892826 Add $__timeGroupAlias to postgres macros 2018-08-01 09:03:34 +02:00
Sven Klemm
43295f9c18 remove alias from postgres $__timeGroup macro 2018-08-01 08:50:19 +02:00
Marcus Efraimsson
dfda51a9be
Merge pull request #12762 from sohonet/add_cloudwatch_aws_dx
add AWS/DX metrics and dimension to cloudwatch
2018-07-31 17:58:32 +02:00
Torkel Ödegaard
276a5e6eb5 fix: test data api route used old name for test data datasource, fixes #12773 2018-07-31 17:29:02 +02:00
Marcus Efraimsson
3cecc0b54e
Merge pull request #12301 from franciscocpg/cloudwatch-app-sync
Adding Cloudwatch AWS/AppSync metrics and dimensions
2018-07-31 11:38:31 +02:00
Jason Pereira
88d8072be3 add aws_dx to cloudwatch datasource 2018-07-30 15:51:15 +01:00
Marcus Efraimsson
38a52c2489
mssql: update tests 2018-07-30 13:50:52 +02:00
Marcus Efraimsson
e32cf75c2d
fix usage of metric column types so that you don't need to specify metric alias 2018-07-30 13:50:18 +02:00
Sven Klemm
3aa4790979 add tests for metric column prefix to mssql 2018-07-27 18:13:19 +02:00
Sven Klemm
e487fabcd5 add metric column prefix test for mysql 2018-07-27 17:59:59 +02:00
Sven Klemm
7905c29875 adjust metric prefix code to sql engine refactor 2018-07-27 15:34:04 +02:00
Sven Klemm
f9d6c88a55 add testcase for metric column as prefix 2018-07-27 15:32:54 +02:00
Marcus Efraimsson
02ba467bf1
Merge pull request #12730 from marefr/sql_refactor
SQL datasources - backend refactor
2018-07-27 14:13:19 +02:00
Marcus Efraimsson
e43feb7bfa
use const for rowlimit in sql engine 2018-07-27 13:21:40 +02:00
Marcus Efraimsson
ab8fa0de74
elasticsearch: support reversed index patterns
Now both [index-]pattern and pattern[-index] are supported
2018-07-26 21:39:02 +02:00
Marcus Efraimsson
4f7882cda2
mssql: use new sql engine 2018-07-26 18:11:10 +02:00
Marcus Efraimsson
27db454012
mysql: use new sql engine 2018-07-26 18:10:45 +02:00
Marcus Efraimsson
2f3851b915
postgres: use new sql engine 2018-07-26 18:10:17 +02:00
Marcus Efraimsson
d42cea5d42
refactor sql engine to make it hold all common code for sql datasources 2018-07-26 18:09:42 +02:00
Mitsuhiro Tanda
055d208a32 fix invalid reference 2018-07-25 11:27:43 +09:00
Marcus Efraimsson
1dd9646a50
fix failing test due to time diff issues 2018-07-24 19:05:09 +02:00
Marcus Efraimsson
e921f3b673
Merge pull request #12698 from mtanda/cw_400_err
CloudWatch backend return 400 if user input error
2018-07-24 16:43:22 +02:00
Marcus Efraimsson
05da21c6d7
Merge pull request #12678 from yogyrahmawan/escape_postgres_parameters
postgres; escape ssl mode parameter
2018-07-24 11:15:21 +02:00
Marcus Efraimsson
93e73919e8
fix code style 2018-07-24 11:03:46 +02:00
Mitsuhiro Tanda
d9bf894383 return 400 if user input error 2018-07-24 17:06:55 +09:00
David
4d722b2177
Merge pull request #12675 from grafana/davkal/logging-datasource
Datasource for Grafana logging platform
2018-07-23 18:11:11 +02:00
Daniel Lee
5129ea8f87
Merge pull request #11624 from mtanda/cw_get_metric_data
CloudWatch GetMetricData support
2018-07-22 21:34:07 +02:00
yogyrahmawan
26aa575cb4 escaping ssl mode on postgres param 2018-07-22 08:04:57 +07:00
David Kaltschmidt
3297ae462d Datasource for Grafana logging platform
- new builtin datasource plugin "Logging" (likely going to be renamed)
- plugin implements no panel ctrls yet, only ships datasource
- new models for logging data as first class citizen (aside from table
  and time_series model)
- Logs as new view for Explore
- JSON view for development

Testable only against existing logish deployment.
Then test with queries like `{job="..."} regexp`.
2018-07-20 17:07:17 +02:00
Torkel Ödegaard
e413f026b9
fix: postgres/mysql engine cache was not being used, fixes #12636 (#12642) 2018-07-18 07:21:32 -07:00
Torkel Ödegaard
3fa2ec0762 Merge branch 'ldap-grafana-admin' 2018-07-18 13:02:49 +02:00
Daniel Lee
f5cc7618c5 alert: add missing test after refactor 2018-07-17 22:17:43 +02:00
Jakob van Santen
92d417f6b4 Handle query string in storage public_url (#9351) (#12555) 2018-07-17 11:10:12 -07:00
David
21e5d61de6
Merge pull request #12631 from grafana/davkal/explore-url-encoding
Use url params for explore state
2018-07-17 16:49:13 +02:00
Augustin
05e060dee0 HTTP API documentation +fix when updating a playlist (#12612)
* get id from path param when updating a playlist

* add playlist http api documentation

* remove required condition for the id in update cmd
2018-07-17 07:45:38 -07:00
David Kaltschmidt
c6e9ffb168 Use url params for explore state
- putting state in the path components led to 400 on reload
- use `/explore?state=JSON` instead
2018-07-17 12:56:05 +02:00
Caleb Tote
10aaf7b506
Adding eval_data to alerts query results 2018-07-16 12:38:42 -04:00
Torkel Ödegaard
c189262bac ldap: Make it possible to define Grafana admins via ldap setup, closes #2469 2018-07-16 16:56:42 +02:00
Torkel Ödegaard
c6bcf13d78
Devenv testdata dashboards (#12615)
* devenv: working on dev env setup & dashboards

* devenv: refactored testdata app to a built in datasource instead, and moved dashboards to a devenv provisioned dashboards
2018-07-16 03:12:13 -07:00
David
a13b4f2b3f
Merge pull request #12596 from grafana/davkal/explore-datasource-selector
Explore Datasource selector
2018-07-16 11:13:29 +02:00
Mark Meyer
0f6e5e2953 Allow settting of default org id to auto-assign to (#12401)
Author:    Mark Meyer <mark@ofosos.org>
2018-07-13 12:14:40 -07:00
David Kaltschmidt
d06b26de26 Explore Datasource selector
Adds a datasource selector to the Explore UI. Only datasource plugins
that have `explore: true` in their `plugin.json` can be selected.

- adds datasource selector (based on react-select) to explore UI
- adds getExploreSources to datasource service
- new `explore` flag in datasource plugins model
- Prometheus plugin enabled explore
2018-07-13 09:09:36 +02:00
Torkel Ödegaard
c03764ff8a
Refactor team pages to react & design change (#12574)
* Rewriting team pages in react

* teams to react progress

* teams: getting team by id returns same DTO as search, needed for AvatarUrl

* teams: progress on new team pages

* fix: team test

* listing team members and removing team members now works

* teams: team member page now works

* ux: fixed adding team member issue

* refactoring TeamPicker to conform to react coding styles better

* teams: very close to being done with team page rewrite

* minor style tweak

* ux: polish to team pages

* feature: team pages in react & everything working

* fix: removed flickering when changing tabs by always rendering PageHeader
2018-07-11 11:23:07 -07:00
Bryan T. Richardson
daf0c374b3 Added BurstBalance metric to list of AWS RDS metrics. 2018-07-10 10:11:39 -06:00
yogy rahmawan
8b32dc5847 move go vet out of scripts and fixing warning (#12552) 2018-07-09 23:25:32 -07:00