Torkel Ödegaard
689e366f59
refactoring: updated api url routes so they do not conflict with slug route
2017-06-06 09:51:14 +02:00
Torkel Ödegaard
c87418d060
refactoring: Dashboard history restore operation is now reusing existing
...
operations instead of duplicating a bunch of get & save logic.
2017-06-05 17:45:27 +02:00
Torkel Ödegaard
f3980504e2
Merge branch 'master' into walmartlabs-master
2017-06-05 13:43:00 +02:00
sanchitraizada
77c046aac6
Implement review feedback
2017-06-01 17:57:09 -04:00
Torkel Ödegaard
0d39852ef4
fix: fixed test data fake metric query, fixes #8474
2017-05-29 10:48:38 +02:00
Ben Tranter
b6e46c9eb8
History and Version Control for Dashboard Updates
...
A simple version control system for dashboards. Closes #1504 .
Goals
1. To create a new dashboard version every time a dashboard is saved.
2. To allow users to view all versions of a given dashboard.
3. To allow users to rollback to a previous version of a dashboard.
4. To allow users to compare two versions of a dashboard.
Usage
Navigate to a dashboard, and click the settings cog. From there, click
the "Changelog" button to be brought to the Changelog view. In this
view, a table containing each version of a dashboard can be seen. Each
entry in the table represents a dashboard version. A selectable
checkbox, the version number, date created, name of the user who created
that version, and commit message is shown in the table, along with a
button that allows a user to restore to a previous version of that
dashboard. If a user wants to restore to a previous version of their
dashboard, they can do so by clicking the previously mentioned button.
If a user wants to compare two different versions of a dashboard, they
can do so by clicking the checkbox of two different dashboard versions,
then clicking the "Compare versions" button located below the dashboard.
From there, the user is brought to a view showing a summary of the
dashboard differences. Each summarized change contains a link that can
be clicked to take the user a JSON diff highlighting the changes line by
line.
Overview of Changes
Backend Changes
- A `dashboard_version` table was created to store each dashboard
version, along with a dashboard version model and structs to represent
the queries and commands necessary for the dashboard version API
methods.
- API endpoints were created to support working with dashboard
versions.
- Methods were added to create, update, read, and destroy dashboard
versions in the database.
- Logic was added to compute the diff between two versions, and
display it to the user.
- The dashboard migration logic was updated to save a "Version
1" of each existing dashboard in the database.
Frontend Changes
- New views
- Methods to pull JSON and HTML from endpoints
New API Endpoints
Each endpoint requires the authorization header to be sent in
the format,
```
Authorization: Bearer <jwt>
```
where `<jwt>` is a JSON web token obtained from the Grafana
admin panel.
`GET "/api/dashboards/db/:dashboardId/versions?orderBy=<string>&limit=<int>&start=<int>"`
Get all dashboard versions for the given dashboard ID. Accepts
three URL parameters:
- `orderBy` String to order the results by. Possible values
are `version`, `created`, `created_by`, `message`. Default
is `versions`. Ordering is always in descending order.
- `limit` Maximum number of results to return
- `start` Position in results to start from
`GET "/api/dashboards/db/:dashboardId/versions/:id"`
Get an individual dashboard version by ID, for the given
dashboard ID.
`POST "/api/dashboards/db/:dashboardId/restore"`
Restore to the given dashboard version. Post body is of
content-type `application/json`, and must contain.
```json
{
"dashboardId": <int>,
"version": <int>
}
```
`GET "/api/dashboards/db/:dashboardId/compare/:versionA...:versionB"`
Compare two dashboard versions by ID for the given
dashboard ID, returning a JSON delta formatted
representation of the diff. The URL format follows
what GitHub does. For example, visiting
[/api/dashboards/db/18/compare/22...33](http://ec2-54-80-139-44.compute-1.amazonaws.com:3000/api/dashboards/db/18/compare/22...33 )
will return the diff between versions 22 and 33 for
the dashboard ID 18.
Dependencies Added
- The Go package [gojsondiff](https://github.com/yudai/gojsondiff )
was added and vendored.
2017-05-24 19:14:39 -04:00
Torkel Ödegaard
0156a94a49
annotations: you can now read annoations via manually created annoation query
2017-04-12 15:46:41 +02:00
Alexander Zobnin
d553498a33
graph(add annotation): initial backend implementation #1286
2017-04-10 20:22:58 +03:00
Torkel Ödegaard
bd4f073425
mysql: minor update
2017-03-30 20:23:40 +02:00
Daniel Lee
193d468ed3
admin: adds paging to global user list
...
Currently there is a limit of 1000 users in the global
user list. This change introduces paging so that an
admin can see all users and not just the first 1000.
Adds a new route to the api - /api/users/search that
returns a list of users and a total count. It takes
two parameters perpage and page that enable paging.
Fixes #7469
2017-02-13 12:59:36 +01:00
huydx
143cbe921f
(feat) support datasource delete by name api
2017-02-10 23:30:14 +09:00
Torkel Ödegaard
8a95c563bb
Merge branch 'master' into websocket
2017-01-31 08:56:49 +01:00
Pavlos Daoglou
3e741315b4
[3743] Adds support for user search based on login or email ( #7334 )
...
* [3743] Adds support for user search based on login or email
* Use query parameter instead
* Use macaron Query() instead
2017-01-31 06:25:55 +01:00
Torkel Ödegaard
b8f559aecb
feat(plugins): made notifiers more pluggable and easier to support many of them, new ones can now be added without modifying any existing file, #7162
2017-01-06 12:04:25 +01:00
Torkel Ödegaard
fad07f0d15
refactor(http): refactoring http server
2016-12-21 14:36:32 +01:00
bergquist
a2257ec3d0
tech(alerting): renames pause all method
2016-12-19 15:17:49 +01:00
bergquist
ecdf1888c4
feat(alerting): removes pause per datasource
2016-12-19 13:24:45 +01:00
bergquist
fb6aa0e026
feat(api): adds endpoint for mass pausing alerts
...
ref #6589
2016-12-16 15:00:58 +01:00
Torkel Ödegaard
22bf6420f1
Merge branch 'master' of github.com:grafana/grafana
2016-12-08 10:25:26 +01:00
bergquist
8ee85626f2
fix(api): return correct json info after updating datasource
...
closes #6869
2016-12-07 18:09:17 +01:00
Torkel Ödegaard
fd512457d8
Merge remote-tracking branch 'origin/master' into getting-started-panel-css2
2016-11-18 16:31:54 +01:00
Torkel Ödegaard
e3564d12a1
fix(404): fixed 404 page
2016-11-16 17:09:00 +01:00
Torkel Ödegaard
fb57bf77da
ux(getting started): progress on getting started panel and persited help flag states, #6466
2016-11-09 10:41:39 +01:00
bergquist
b2d5b920f5
feat(alerting): allow editor to modify notifications
...
closes #6314
2016-10-19 08:01:31 +02:00
Torkel Ödegaard
4c26c55fea
fix(api): minor change to how pause alert was done
2016-10-14 09:58:22 +02:00
Torkel Ödegaard
c9d7eb0a7a
feat(alerting): added clear history button to alert state history view, #6244
2016-10-14 09:33:42 +02:00
bergquist
c6cf7647ff
feat(alerting): pausing alerts requires alert id
2016-10-11 10:53:24 +02:00
bergquist
804797245d
feat(alerting): make it possible to pause from alert tab
2016-10-11 08:40:38 +02:00
bergquist
264590a9c2
feat(alerting): add paused api endpoint
2016-10-10 14:26:09 +02:00
Torkel Ödegaard
7c339f0794
feat(alerting): show alertin state in panel header, closes #6136
2016-09-30 17:37:47 +02:00
Torkel Ödegaard
3ecd96e682
feat(testdata): lots of work on new test data data source and scenarios
2016-09-27 18:17:39 +02:00
Carl Bergquist
d6a0ec85c4
Merge pull request #6111 from grafana/pluginreadme
...
allow non-admin users to view plugin readme
2016-09-22 19:51:47 +02:00
Dan Cech
2c3dd84ebb
allow non-admin users to view plugin readme
2016-09-22 13:46:11 -04:00
Torkel Ödegaard
936146768f
fix(snapshots): fixed issue with viewing embedded/solo/png panel from snapshot without login, fixes #3769
2016-09-22 11:46:58 +02:00
Torkel Ödegaard
d60bd77658
feat(annotations): added support to show grafana stored annotations in graphs, #5982
2016-09-08 11:25:45 +02:00
bergquist
d11bc57c37
feat(notifications): make it possible to send test alert notifications
...
closes #5847
2016-09-05 14:45:15 +02:00
bergquist
11a4ff0f8a
feat(alerting): add basic UI for history in alert tab
...
ref #5850
2016-08-30 13:22:59 +02:00
bergquist
650a87dc05
feat(alerting): add alert history api endpoint
...
ref #5850
2016-08-30 09:32:56 +02:00
chrismartin0077
0050707134
feat(api) HEAD response, fixes #3854
2016-08-29 06:07:44 -07:00
bergquist
0cbedb4473
chore(api): remove commented endpoints
2016-08-22 16:56:28 +02:00
Torkel Ödegaard
7eb2d2cf47
feat(alerting): working on state management
2016-07-22 13:14:09 +02:00
Torkel Ödegaard
9e91aacd34
feat(alerting): progress on testing alerts
2016-07-21 10:29:11 +02:00
Torkel Ödegaard
fb636344a6
feat(alerting): began work on testing alert rule from UI without having to save it
2016-07-20 16:13:36 +02:00
Torkel Ödegaard
f13b869aa4
feat(alerting): work on alerting
2016-07-14 13:32:16 +02:00
Torkel Ödegaard
624cd6fc0a
feat(alerting): cleanup, removed alert changes table and code
2016-07-13 11:58:55 +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
Torkel Ödegaard
d44325affd
feat(apps): progress on app dashboard imports
2016-07-08 09:35:06 +02:00
bergquist
a18506e2e4
feat(alerting): changing notifications should require org admin
2016-06-20 11:32:55 +02:00
bergquist
0c5da9155f
feat(alerting): only expose DTO info when requesting all notifications
2016-06-20 11:31:20 +02:00
bergquist
96e5ad3f5c
Merge branch 'alerting' into alerting_notifications
2016-06-20 10:45:05 +02:00
bergquist
dd8c3d0355
Merge branch 'master' into alerting
2016-06-20 10:44:48 +02:00
Torkel Ödegaard
9f9fca1e76
feat(datasource): added suggest urls for each data source, #4577
2016-06-17 13:35:29 +02:00
bergquist
b035074613
tech(alerting): disable update state api
2016-06-16 17:02:45 +02:00
bergquist
a0418da160
Merge branch 'alerting' into alerting_notifications
2016-06-16 16:49:16 +02:00
bergquist
8ec311ade4
Merge branch 'master' into alerting
2016-06-16 16:29:41 +02:00
bergquist
b907ce341c
feat(alerting): enables deletes for alert notifications
2016-06-16 15:21:44 +02:00
bergquist
7f767224af
feat(alerting): basic support for creating and updating notifications
2016-06-16 14:29:20 +02:00
bergquist
a3b7ea7704
feat(alerting): skeleton for alert notification configuration page
2016-06-16 08:16:16 +02:00
Torkel Ödegaard
ec0b09450c
Merge branch 'export-dashboard'
...
Conflicts:
conf/defaults.ini
pkg/setting/setting.go
public/app/core/components/grafana_app.ts
public/app/core/core.ts
public/app/features/dashboard/dashboardCtrl.js
2016-06-16 08:06:43 +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
34e17f7282
feat(alerting): requests looks to be working again
2016-06-06 17:11:46 +02:00
Torkel Ödegaard
70cb8400c3
feat(alerting): changed name of root Alerts nav item and page from Alerts to Alerting
2016-06-06 09:17:29 +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
e0c6048820
feat(instrumentation): added gauge and http endpoint
2016-06-03 16:15:36 +02:00
Torkel Ödegaard
1a05ae2eaa
feat(instrumentation): more work
2016-06-03 15:06:57 +02:00
bergquist
1686d86c3b
Merge branch 'master' into alerting_definitions
2016-05-30 08:26:08 +02:00
Torkel Ödegaard
e83d13848e
Merge branch 'master' into export-dashboard
...
Conflicts:
public/app/features/dashboard/submenu/submenu.ts
2016-05-26 14:22:22 +02:00
Mukesh
4038b4d17e
Set active org through admin api ( #5179 )
2016-05-26 06:51:23 +02:00
Torkel Ödegaard
ba6573af61
Merge branch 'master' into export-dashboard
...
Conflicts:
public/app/features/dashboard/submenu/submenu.ts
2016-05-25 12:32:56 +02:00
bergquist
8c2b6b532d
fix(preferences): fixes broken default home dashboard
...
closes #5167
2016-05-25 09:56:45 +02:00
Torkel Ödegaard
855e913bbd
feat(dashboards): began work on dashboard list
2016-05-19 11:03:10 +02:00
bergquist
1fe2055743
tech(alerting): disable DEL for alert rules in the api
2016-05-10 15:02:11 +02:00
bergquist
1bb8bc58b8
feat(alerting): add parameteters for filtering alerts
2016-05-10 09:45:56 +02:00
bergquist
47070f2d1f
chore(alerting): struct names and url refactoring
2016-05-09 11:25:21 +02:00
bergquist
27274f37e8
feat(alerting): update paths for alert state
2016-05-06 14:37:41 +02:00
Torkel Ödegaard
bb6f4fff87
feat(export/import): minor progress
2016-05-03 16:40:21 +02:00
bergquist
743a6fa37c
feat(alerting): add support for deleting alert rules
2016-05-02 16:07:19 +02:00
bergquist
f442adca47
feat(alerting): adds api endpoints for alerts per dashboard and panel
2016-04-28 15:13:42 +02:00
bergquist
ecfbc2edca
feat(alerting): adds alert history page
2016-04-28 11:42:03 +02:00
bergquist
0f0fa0c257
feat(alerting): adds endpoint for getting alert states log
2016-04-28 10:59:46 +02:00
bergquist
e7be7d2835
feat(alerting): add api endpoint for alert state
2016-04-28 08:23:50 +02:00
bergquist
6a5ecb3fca
feat(alerting): adds basic page for listing alerts
2016-04-27 13:02:28 +02:00
bergquist
973db1ac38
feat(alerting): add api route for alert changes
2016-04-27 08:59:33 +02:00
bergquist
9b50313f11
feat(alerting): add api endpoints for listing alerts
2016-04-26 17:36:50 +02:00
Torkel Ödegaard
d9ad4cf2fc
fix(): made plugin settings api call accessable for viewer roles
2016-04-13 13:03:41 -04:00
Torkel Ödegaard
10131aa8a0
fix(pluginlist): fixed issue with home dashboard and new pluginlist panel that casued permission denied error for non admin users, fixes #4686
2016-04-13 12:23:29 -04:00
Torkel Ödegaard
12800f831a
Merge branch 'master' into pluginlist
2016-04-09 15:01:39 -04:00
Torkel Ödegaard
370589d6c0
fix(org switch): fixed issue with switching orgs, fixes #4614
2016-04-09 13:27:06 -04:00
Torkel Ödegaard
d70ef90bdd
feat(): plugin list panel
2016-04-08 16:42:33 -04:00
Torkel Ödegaard
43ebc172cb
fix(profile): fixed change password link and page, fixes #4542
2016-04-04 13:52:41 -04:00
Torkel Ödegaard
ab1048b7ee
feat(preferences): theme and home dashbord settings now work work on profile and org settings page
2016-04-02 13:54:06 -07:00
Torkel Ödegaard
38a10f8be4
progress
2016-04-01 17:34:30 -07:00
Torkel Ödegaard
6ed9164c9d
Merge branch 'master' of github.com:grafana/grafana into preferences
2016-03-30 13:35:17 -07:00
Torkel Ödegaard
14326b626e
ux(): checkbox now works in dark and white theme
2016-03-28 13:10:42 +02:00
Torkel Ödegaard
c711fb67c8
Merge branch 'master' into websocket
2016-03-22 10:31:57 +01:00
Torkel Ödegaard
5e431149cd
feat(preferences): removed unused api prefernce methods, these need to be abstracted more from an http api perpsective, they are too low level for the http api, #4399
2016-03-20 11:54:24 +01:00
Torkel Ödegaard
9e98c86ae1
Merge branch 'master' into preferences
2016-03-20 11:27:49 +01:00
utkarshcmu
9d4fa87914
Viewer not able to delete snapshot
2016-03-18 01:13:34 -07:00
utkarshcmu
cb42cfc6af
Removed unwanted api, moved logic into backend
2016-03-17 02:29:34 -07:00
utkarshcmu
4fbe954a79
Home dashboard per user per org works
2016-03-17 01:38:18 -07:00
utkarshcmu
66621d762e
Added getDashboardSlugById api
2016-03-17 01:01:58 -07:00
utkarshcmu
9dd6aefcec
Minor corrections
2016-03-16 23:35:06 -07:00
utkarshcmu
749fd618a9
Saving home dashboard id in table
2016-03-16 23:22:27 -07:00
Torkel Ödegaard
e06756bcab
Merge branch 'preferences' of github.com:grafana/grafana into preferences
2016-03-15 22:15:27 +01:00
Torkel Ödegaard
9c222a445f
Merge branch 'master' into preferences
2016-03-15 22:14:35 +01:00
Torkel Ödegaard
3d5251d9a5
feat(websocket): more work websocket ds, # 4355
2016-03-14 17:32:48 +01:00
Torkel Ödegaard
195be2742c
feat(live): wip work
2016-03-14 16:18:07 +01:00
Torkel Ödegaard
fbd94fc6ce
feat(websockets): inital work on websockets, #4355
2016-03-14 11:59:51 +01:00
utkarshcmu
e371e03696
Able to save preference version, created, updated fields
2016-03-14 03:12:52 -07:00
Torkel Ödegaard
5b6754ce6c
Merge branch 'master' into websocket
2016-03-14 10:33:11 +01:00
Torkel Ödegaard
581ffb862c
feat(plugins): polish to plugin page, better handling for reading readme file contents
2016-03-13 19:21:44 +01:00
Torkel Ödegaard
c5a817194a
more work on dashboard importing and templating
2016-03-11 17:31:57 +01:00
utkarshcmu
43b474143c
Preferences model updated
2016-03-11 06:30:05 -08:00
Torkel Ödegaard
ece8a925a6
Merge branch 'master' of github.com:grafana/grafana
...
Conflicts:
examples/nginx-app/package.json
examples/nginx-app/plugin.json
2016-03-11 12:39:10 +01:00
Torkel Ödegaard
2de439bd1e
feat(plugins): progress on dashboard installs , #4298
2016-03-11 09:57:20 +01:00
utkarshcmu
4fbff99186
Implemented GetDataSourceIdByName API
2016-03-10 01:31:10 -08:00
utkarshcmu
8afd56575c
Moved api in correct group
2016-03-10 00:48:38 -08:00
Torkel Ödegaard
dfaa6d8eb9
feat(plugins): a lot of work on #4298
2016-03-08 18:17:47 +01:00
utkarshcmu
1a39d93b4e
Implemented GetDataSourceByName API
2016-03-08 01:54:10 -08:00
utkarshcmu
8f42bec270
Implemented GetUserPreferences API
2016-03-06 11:42:15 -08:00
utkarshcmu
660d3fa1e9
Implemented savePreferences API
2016-03-06 03:47:39 -08:00
utkarshcmu
cf926134ef
Added savePreferencesAPI
2016-03-05 13:15:49 -08:00
Torkel Ödegaard
fc877ae0f4
poc(websockets): websocket poc
2016-03-03 23:05:08 +01:00
Anthony Woods
35f7a71f9a
fix app->plugin renamin in more places
2016-02-29 19:54:36 +08:00
Torkel Ödegaard
8db7cf49a6
feat(plugins): began refactoring AppSettings -> PluginSettings, and have the plugins list view and plugin edit view be common for all plugins
2016-02-25 14:55:31 +01:00
Torkel Ödegaard
08f7ccff38
feat(avatar): added server side proxy and cache of gravatar requests
2016-02-21 00:06:28 +01:00
Torkel Ödegaard
fcc960e9a2
Merge pull request #3792 from utkarshcmu/snapshot-view
...
UI Review: Snapshot view
2016-02-05 08:49:23 +01:00
Carl Bergquist
251bf7a2b4
Merge pull request #3840 from utkarshcmu/stats
...
Grafana stats view as mentioned in #3812
2016-01-27 19:41:10 +01:00
utkarshcmu
da67afa51e
Fixed api bugs, stats endpoint working
2016-01-24 21:18:17 -08:00
utkarshcmu
c7fae5386d
Added backend API for stats
2016-01-24 11:01:33 -08:00
Anthony Woods
f94599cd29
merge apiPlugins with appPlugins
2016-01-22 01:15:04 +08:00
utkarshcmu
ca55d1f315
Minor bug fixes
2016-01-19 05:05:24 -08:00
utkarshcmu
bcb44b7b31
UI and backend connectivity implemented
2016-01-19 05:02:22 -08:00
utkarshcmu
1ab1154010
Optimized backend queries
2016-01-19 04:09:57 -08:00
utkarshcmu
8f067a5ed2
Added backend functionality for searching snapshots
2016-01-19 01:37:36 -08:00
Torkel Ödegaard
66eebd1ac3
refactor(playlist): refactor of playlist feature, and PR #3776
2016-01-18 16:01:14 +01:00
Torkel Ödegaard
6da3af5e89
Merge branch 'new_macaron'
2016-01-13 15:48:49 +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
Shaofeng Chen
dc427d5a2c
add get org by name api
2016-01-12 13:50:56 -08:00
Torkel Ödegaard
e5b3f27a30
Merge branch 'apps'
2016-01-12 15:41:15 +01:00
bergquist
1ec97e5199
feat(playlist): shortens urls
2016-01-12 14:36:04 +01:00
bergquist
07fdf6491c
fix(playlist): new url for viewing playlist
2016-01-12 08:17:44 +01:00
bergquist
8a38991270
feat(playlist): changes to relation table
...
Also introduces an abstraction between playlist and dashboard.
This will make it possible to att search, and tag filtering to
playlists without any major refactoring
2016-01-12 08:17:44 +01:00
Torkel Ödegaard
c1e94e61d0
feat(apps): lots of more work on apps, changed app_plugin to app_settings in order to to confuse the app plugin model (definition) and app org settings
2016-01-10 21:37:11 +01:00
bergquist
22c001c8a6
fix(playlist): implement api according to new standard
2016-01-08 14:21:30 +01:00
utkarshcmu
bcaaedf2ff
Resurrected nikita-graf's work and added playlistType for future use
2015-12-22 02:07:15 -08:00
woodsaj
0903d5541b
Merge branch 'master' of github.com:grafana/grafana into externalPlugin
...
Conflicts:
pkg/api/api.go
pkg/api/api_plugin.go
pkg/api/datasources.go
pkg/api/frontendsettings.go
pkg/api/index.go
pkg/plugins/models.go
pkg/plugins/plugins.go
2015-12-22 00:23:24 +08:00
woodsaj
48cf56b69a
more renaming. also moved apps and datasource menus
2015-12-18 13:46:40 +08:00