Daniel Lee
0d85c63fff
middleware: recovery handles panics in all handlers
...
Also, changes the order of the middleware so that recovery is after the
gzip middleware. Otherwise, a 200 OK is returned instead of a 500 error.
2017-11-15 13:57:33 +01:00
Torkel Ödegaard
b44daaabf2
Merge branch 'master' into develop
2017-10-24 09:06:09 +02:00
bergquist
139f077453
prometheus: enable gzip for /metrics endpoint
...
closes #9464
2017-10-23 09:35:46 +02:00
Torkel Ödegaard
18337f610d
Merge branch 'master' into develop
2017-09-22 08:42:07 +02:00
Torkel Ödegaard
41e01184aa
Merge branch 'master' into develop
2017-09-18 12:32:29 +02:00
bergquist
861843f4ca
mark >=400 responses as error
2017-09-18 11:08:58 +02:00
bergquist
ec29b469e4
adds custom tags from settings
2017-09-18 11:08:58 +02:00
bergquist
e3211f6e48
use route as span name
2017-09-18 11:08:58 +02:00
bergquist
d55b49b7b7
attach context with span to *http.Request
2017-09-18 11:08:58 +02:00
bergquist
89c86c7a22
use opentracing ext package when possible
2017-09-18 11:08:58 +02:00
bergquist
2e350bbb8e
adds basic traces using open traces
2017-09-18 11:08:58 +02:00
bergquist
491e6897e7
metrics: set summary unit
...
we have to use milleseconds since graphite
doesnt support float64
2017-09-14 19:28:54 +02:00
bergquist
4bc6ecb241
adds metric middlware to route register
2017-09-14 14:26:32 +02:00
bergquist
6d22a67a30
return /metrics before session middleware
2017-09-14 14:26:32 +02:00
bergquist
2de94d6548
convert old metrics to prom metrics
2017-09-14 14:26:32 +02:00
Torkel Ödegaard
a38ded9e7e
Merge branch 'master' into develop-newgrid-row-design2
2017-09-07 15:05:41 +02:00
wangguoliang
652fce7e76
Optimize some wrong usage and spelling
...
Signed-off-by: wgliang <liangcszzu@163.com>
2017-09-07 17:50:11 +08:00
Torkel Ödegaard
d25dae9b58
Merge branch 'master' into develop-newgrid
2017-08-09 14:07:06 +02:00
Torkel Ödegaard
668cb3c1ef
Merge branch 'v4.4.x'
2017-08-09 10:37:06 +02:00
Torkel Ödegaard
e8a20643d6
feat: store last seen date for users and present in stats and user lists, closes #9007
2017-08-09 10:36:41 +02:00
Daniel Lee
649fe7e462
Merge branch 'v4.4.x'
2017-08-07 10:47:23 +02:00
Daniel Lee
aa889e59a1
tests: fix after interface change
2017-08-07 10:20:46 +02:00
Daniel Lee
1e5778174c
login: regenerates session id on login
2017-08-07 10:00:29 +02:00
Torkel Ödegaard
9fb60c2fc8
Merge branch 'develop' into panel-title-menu-ux
2017-08-02 09:56:08 +02:00
Daniel Lee
e6f9546a7c
api: add no cache headers for IE11
...
Adds pragma and expires headers for API calls so that IE11 does not
cache GET calls. Ref #5356
2017-07-06 18:56:22 +02:00
Daniel Lee
74093c700f
api: adds no-cache header for GET requests
...
Fixes #5356 . Internet Explorer aggressively caches GET requests which
means that all API calls fetching data are cached. This fix adds a
Cache-Control header with the value no-cache to all GET requests to
the API.
2017-07-04 21:26:05 +02:00
Daniel Lee
f68d2816ab
dashfolders: security for png rendering
2017-06-22 01:23:48 +02:00
Dhia
ac28c4b233
add Referer header to logs. This is useful to link datasource requests to dashboard that originated it ( #8399 )
2017-05-24 13:47:29 +02:00
Tiantian Gao
b2c14b858e
Fix http logging time_ms
unit is wrong ( #8342 )
...
In fact, the unit of `time_ms` int http logging is not "ms", this patch fix it.
2017-05-11 08:53:40 +02:00
Dan Cech
f490c5f12c
use X-Grafana-Org-Id header to ensure backend uses correct org ( #8122 )
2017-04-14 15:47:39 +02:00
Torkel Ödegaard
b3df1aa9bd
org: fixed issue with orgId query param redirect handling when grafana is under subpath and reverse proxy, fixes #8089
2017-04-12 07:11:08 +02:00
Daniel Lee
f45d637025
auth: fix warning in test
2017-03-23 15:52:08 +01:00
Daniel Lee
beb85f413a
oauth: delete session key instead of set to empty
...
Adds the Delete function to the Session wrapper so that the Macaron
function for deleting keys from a Session can be used.
https://go-macaron.com/docs/middlewares/session#implement-provider-interface
2017-03-23 15:26:13 +01:00
Torkel Ödegaard
c3202d3f99
sessions: start session gc at startup but only after between 10 - 180 seconds
2017-03-06 12:23:28 +01:00
bergquist
072c1559ba
middlware: prevent orgredirect to open body stream
...
the org redirecter opened the body stream by misstake. Causing
downstream code to start reading from an empty stream and raise errors.
2017-02-20 11:38:29 +01:00
bergquist
6115941df0
middleware: rename org-id -> orgId
2017-02-17 15:18:40 +01:00
bergquist
5174d050f2
middlware: change org when url contains orgid
...
closes #6948
ref #1613
2017-02-17 15:02:14 +01:00
Torkel Ödegaard
6e27db148c
Merge branch 'authproxy_ldap' of https://github.com/seuf/grafana into seuf-authproxy_ldap
2016-12-14 21:45:15 +01:00
huydx
adb441e5c8
(format) run go fmt in pkg
2016-12-14 12:17:38 +09:00
Utkarsh Bhatnagar
bd20dc6c4c
Fixed failing tests ( #6941 )
2016-12-13 10:00:33 +01:00
Utkarsh Bhatnagar
5777f65d05
Basic Auth now supports LDAP username and password ( #6940 )
2016-12-13 09:15:52 +01:00
Seuf
12a82bc0d4
Auth Proxy improvements - adds the option to use ldap groups for authorization in combination with an auth proxy - adds an option to limit where auth proxy requests come from by configure a list of ip's - fixes a security issue, session could be reused
2016-12-12 09:53:02 +01:00
Seuf
ae27c17c68
Auth Proxy improvements
...
- adds the option to use ldap groups for authorization in combination with an auth proxy
- adds an option to limit where auth proxy requests come from by configure a list of ip's
- fixes a security issue, session could be reused
2016-12-12 09:43:17 +01:00
Torkel Ödegaard
05772b30d7
feat(ux): completed work on getting started panel, #6466
2016-12-08 10:25:05 +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
18e965c775
fix(error handling): fixed server side error handling page
2016-11-16 17:41:44 +01:00
Eric Perrino
81443bf8b4
Added a state parameter for all OAuth requests
2016-10-08 01:22:32 -05:00
Torkel Ödegaard
175c651e65
fix(server side rendering): Fixed issues with server side rendering for alerting & for auth proxy scenarios, fixes #6115 , fixes #5906
2016-09-23 12:29:53 +02:00
bergquist
6c5860d3e8
feat(metrics): measure proxy requests
2016-09-12 13:29:31 +02:00
bergquist
eb673fd16d
fix(middleware): typo
2016-09-12 10:11:55 +02:00
bergquist
4edb31723c
fix(metrics): ignore datasource proxy requests
2016-09-09 13:53:50 +02:00
bergquist
e7b56c6389
tech(metrics): move all request counters into one middleware
2016-09-09 13:28:19 +02:00
bergquist
16fa631ea0
tech(tests): remove unused code that breaks gorename
2016-06-25 16:34:42 +02:00
Torkel Ödegaard
bf1ea560e9
feat(logging): error logging improvements
2016-06-11 12:16:33 +02:00
Torkel Ödegaard
086b59483e
feat(loggin): disable logging by default so unit tests are not full of logging
2016-06-11 11:38:25 +02:00
Torkel Ödegaard
65aad44464
feat(logging): added uname to context logger
2016-06-07 12:20:46 +02:00
Torkel Ödegaard
a02cf5beb7
feat(logging): added loging filters
2016-06-07 12:11:41 +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
064e474b0a
Merge branch 'metrics_reporting'
2016-06-03 18:06:41 +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
Torkel Ödegaard
3065d10931
feat(timing): timing is now working with graphite and influxdb
2016-06-03 09:17:36 +02:00
Torkel Ödegaard
1283461b89
fix(gzip): add plugin proxy to gzip exclusion, fixes #5237
2016-06-02 09:56:53 +02:00
Dmitry Smirnov
3fd6ae597d
minor spelling corrections
...
Signed-off-by: Dmitry Smirnov <onlyjob@member.fsf.org>
2016-02-16 12:12:04 +11:00
Torkel Ödegaard
6da3af5e89
Merge branch 'new_macaron'
2016-01-13 15:48:49 +01:00
Torkel Ödegaard
2cf0dc2cb2
fix(gofmt): fixed non formated go file
2016-01-13 15:43:32 +01:00
Torkel Ödegaard
bdb67d4909
fix(build): fixed dependency and build issue
2016-01-13 15:38:54 +01:00
bergquist
4fe72ebf69
feat(macaron): upgrades macaron version
2016-01-13 15:11:23 +01:00
Torkel Ödegaard
ad94f99d57
refactor(apps): more WIP work on apps
2015-12-22 11:37:44 +01:00
Torkel Ödegaard
eacc46da6d
feat(plugins): WIP on new apps concept
2015-12-21 23:09:27 +01:00
Carl Bergquist
fabaf5cc04
Merge pull request #3575 from piotr1212/no_username_in_render_logging
...
Fix empty username in http log for /render calls
2015-12-21 13:31:10 +01:00
Carl Bergquist
333f9101a0
Merge pull request #3458 from improbable-io/use-memcache-for-session
...
Add memcache as session provider
2015-12-17 15:56:15 +01:00
Piotr Popieluch
e29e3416db
router logger did not show username in /render calls because cookies are
...
cleared in these call. Not just get username before the call is
executed. see #3405 for more info.
2015-12-17 14:28:11 +01:00
Daniel Low
d7f3869959
gofmt
2015-12-08 14:59:54 +00:00
Daniel Low
ed16914715
Add memcache as session provider
2015-12-08 13:35:09 +00:00
Piotr Popieluch
207c1a20ee
router logger, log username taken from cookie
2015-12-03 11:05:50 +01:00
Piotr Popieluch
579bc1c2c8
Add more info in route logging
...
- Add remote address
- Add method
- Add protocol
- Add response size
- Use consistent unit for response time (us)
2015-12-03 09:28:42 +01:00
Torkel Ödegaard
e873574e8c
fix(logging): fixed so that router_logging = true actually logs all http requests, fixes #2902
2015-10-10 17:55:15 -04:00
Torkel Ödegaard
9fc91b7aa1
fixed gofmt issue
2015-10-08 17:30:13 +02:00
Torkel Ödegaard
5e949b0564
fix(quota): fixed failing quota unit tests
2015-09-18 08:36:58 +02:00
woodsaj
1ad10914ce
add quota middleware unittests
2015-09-15 18:19:47 +08:00
woodsaj
6488324cf1
enhance quota support.
...
now includes:
- perOrg (users, dashboards, datasources, api_keys)
- perUser (orgs)
- global (users, orgs, dashboards, datasources, api_keys, sessions)
2015-09-11 23:17:10 +08:00
woodsaj
852f9bd277
refactor quota settings
2015-09-11 01:47:33 +08:00
woodsaj
76e9ebde36
always return after errors.
2015-09-11 01:03:58 +08:00
woodsaj
0688050552
add quota middleware to enforce quotas. issue #321
...
Conflicts:
pkg/api/api.go
2015-09-11 01:03:47 +08:00
Torkel Ödegaard
fdcb4473af
fix(api auth): return 401 for authentication errors and 403 for access denied errors, fixes #2693
2015-09-08 10:46:31 +02:00
Torkel Ödegaard
7072af7c14
fix(auth proxy): Fix for server side rendering of panel when using auth proxy, fixes #2568
2015-08-21 07:49:49 +02:00
Torkel Ödegaard
ae0f8c77d1
Auth: You can now authenicate against api with username / password using basic auth, Closes #2218
2015-06-30 09:37:52 +02:00
Donn Pebe
df33cbc8c5
Fix wrong metrics counter
2015-06-30 12:52:55 +07:00
Torkel Ödegaard
66e60357dc
Set email when creating user from auth_proxy header, Fixes #2156
2015-06-13 20:14:44 +02:00
Torkel Ödegaard
34539c0c13
Enforce domain, host header validation against domain setting, Refactoring of PR #1866 , Closes #1732
2015-05-05 11:21:06 +02:00
Torkel Ödegaard
1f2cba81eb
Merge branch 'enforce-domain' of https://github.com/gummiboll/grafana
2015-05-05 11:15:09 +02:00
Torkel Ödegaard
38fc85d619
Final tweaks to auth proxy feature
2015-05-02 12:30:53 +02:00
Torkel Ödegaard
be589d81c7
Auth: Support for user authentication via reverse proxy header (like X-Authenticated-User, or X-WEBAUTH-USER), Closes #1921
2015-05-02 12:06:58 +02:00
Torkel Ödegaard
ba883d25fe
More middleware unit tests cover all current auth mechanisms
2015-05-02 09:24:56 +02:00
Torkel Ödegaard
f416e2d1ac
More middleware unit test, starting to look really good
2015-05-01 22:26:16 +02:00
Torkel Ödegaard
cb8110cd48
Refactoring, worked on middleware unit tests, and began thinking about api unit tests, #1921
2015-05-01 16:23:36 +02:00
Torkel Ödegaard
d1e9b6d6ae
Began work on auth_proxy feature ( #1932 ), and began work on testing http api, and auth middleware
2015-05-01 11:55:59 +02:00
Emil Thelin
2d7c7871b0
Fixes broken test
2015-04-23 20:56:31 +02:00
Emil Thelin
9fd3ef2687
Enforce domain
2015-04-23 20:38:00 +02:00
Torkel Ödegaard
059db533d5
HTTP API: grafana /render calls nows with api keys, Fixes #1649
2015-04-08 08:59:12 +02:00
Torkel Ödegaard
c07d48d930
A big refactoring for how sessions are handled, Api calls that authenticate with api key will no longer create a new session
2015-04-07 19:21:14 +02:00
Torkel Ödegaard
646298f5c5
Handle errors when loading dashboard with template variables that query data sources that cannot be found
2015-04-07 13:48:26 +02:00
Torkel Ödegaard
1f330d7753
Basic auth: Fixed issue when using basic auth proxy infront of Grafana, Fixes #1673
2015-04-01 15:23:26 +02:00
Torkel Ödegaard
c3fa68ade8
Data source proxy: Fixed issue with Gzip enabled and data source proxy, Fixes #1675
2015-04-01 09:00:17 +02:00
Torkel Ödegaard
b83367063e
Small improvement to dashboard loading error handling
2015-03-31 14:03:01 +02:00
Torkel Ödegaard
d987532262
Added server metrics
2015-03-22 15:14:00 -04:00
Anthony Woods
7010df0fe8
fixes #1619 Secure PhantomJS Png rendering
...
removes auth hack to allow phantomjs to query pages as a user
without auth. Instead we pass phantomjs the session cookie,
which it then includes in the request.
2015-03-21 07:14:13 +08:00
Jason Wilder
d3d896dccd
Log more descriptive error when anonymous org is not found
...
Was logging:
[middleware.go:78 func·004()] [E] Anonymous access organization error%!(EXTRA <nil>)
2015-03-12 11:49:05 -06:00
Torkel Ödegaard
477e035f2e
Fixed anonymous access mode, Closes #1586
2015-03-11 17:34:11 +01:00
Torkel Ödegaard
c75aa23092
New implementation for API Keys that only stores hashed api keys, and the client key is base64 decoded json web token with the unhashed key, Closes #1440
2015-02-26 17:23:28 +01:00
Torkel Ödegaard
26e4809e2e
Big Backend Refatoring: Renamed Account -> Org
2015-02-23 20:07:49 +01:00
Torkel Ödegaard
e3764ad951
Fixed failing dashboard sql test
2015-02-05 15:53:15 +01:00
Torkel Ödegaard
e5fbbe96fd
fixed error handling, and error logging for panel rendering
2015-02-05 12:23:24 +01:00
Torkel Ödegaard
10820f31c2
Changed go package path
2015-02-05 10:37:13 +01:00
Torkel Ödegaard
04d03f73b3
Added disable user sign up feature
2015-01-29 15:46:54 +01:00
Torkel Ödegaard
1d6413bfae
More work on backend for user favorites
2015-01-29 12:10:34 +01:00
Torkel Ödegaard
1cff564483
Fontend handling of account role to hide user actions and links that the user does not have access to
2015-01-28 11:33:50 +01:00
Torkel Ödegaard
a5e450a0dd
Worked on anonymous access
2015-01-27 15:45:27 +01:00
Torkel Ödegaard
257519490a
Worked on login remember cookie, and redirect after login
2015-01-27 12:05:23 +01:00
Torkel Ödegaard
951ce0a102
API token -> API key rename
2015-01-27 08:26:11 +01:00
Torkel Ödegaard
90925273a0
User / Account model split, User and account now seperate entities, collaborators are now AccountUsers
2015-01-19 18:01:04 +01:00
Torkel Ödegaard
c970e82758
Small update to update account command
2015-01-17 08:20:25 +01:00
Torkel Ödegaard
1532eb4278
Fixed png rendering
2015-01-16 17:00:31 +01:00
Torkel Ödegaard
ed879df1f4
Corrected spelling of SignedInUser (was SignInUser)
2015-01-16 16:17:35 +01:00
Torkel Ödegaard
2b05dac071
Api Key role is now correcty added do middleware context
2015-01-16 16:15:35 +01:00
Torkel Ödegaard
3912ed5023
Role checking when saving dashboard, making sure that the user has owner or editor role
2015-01-16 15:28:44 +01:00
Torkel Ödegaard
22156fe309
Big refactoring for context.User, and how current user info is fetching, now included collaborator role
2015-01-16 14:32:18 +01:00
Torkel Ödegaard
5ec07db143
Refactoring of auth middleware, and starting work on account admin
2015-01-15 12:16:54 +01:00
Torkel Ödegaard
5e18afe916
Refactoring of api routes
2015-01-14 14:25:12 +01:00
Torkel Ödegaard
ced5e5500e
mini code cleanup of in auth
2015-01-14 10:14:07 +01:00
woodsaj
7b17e38f5d
add Token authentication support
...
Added CRUD methods for Tokens.
Extend Auth Handler to check for the presence of a Bearer Authorization
header to authenticate against. If there is no header, or the token is not
valid, the Auth Handler falls back to looking for a Session.
2015-01-14 16:33:34 +08:00
Torkel Ödegaard
35326e1d92
Worked a little on anonymous access, needs more work
2015-01-07 16:37:24 +01:00
Torkel Ödegaard
f25a415a9e
Work on making grafana work in sub url
2015-01-04 21:03:40 +01:00
Torkel Ödegaard
ec98c201e4
Datasource options are now included in bootData
2014-12-28 19:30:14 +01:00
Torkel Ödegaard
22bf20a135
Refactoring get account by id and by login to queries
2014-12-19 13:40:02 +01:00
Torkel Ödegaard
adf4e72cf8
More general backend work, in the middle of the night... Zzzz
2014-12-17 03:09:54 +01:00
Torkel Ödegaard
b70a3f0958
started work datasources admin
2014-12-16 12:04:08 +01:00
Torkel Ödegaard
90ae59ccaf
Fixed png rending
2014-12-01 13:25:57 -08:00
Torkel Ödegaard
be781bdb98
Tried postgres
2014-11-24 10:17:13 +01:00
Torkel Ödegaard
4eefa73441
Progress on account and dashboard save/load
2014-11-20 15:19:44 +01:00
Torkel Ödegaard
eb2c078898
Progres on move to sql from rethinkdb
2014-11-20 12:11:07 +01:00
Torkel Ödegaard
9b68911d00
Made it it compile again
2014-11-20 09:16:28 +01:00
Torkel Ödegaard
d7cd2b970e
OAuth remake
2014-10-07 17:56:37 -04:00
Torkel Ödegaard
450d242d5f
working on oauth
2014-10-07 15:54:38 -04:00
Torkel Ödegaard
2783196547
updated
2014-10-07 13:44:20 -04:00
Torkel Ödegaard
e84f06b503
more macaroon stuff
2014-10-07 11:53:25 -04:00
Torkel Ödegaard
222319d924
macaron transition progress
2014-10-05 21:13:07 +02:00
Torkel Ödegaard
201e1d3e6d
Macaron rewrite
2014-10-05 16:50:04 +02:00