Commit Graph

3758 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
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