From 94c3a07115e035fb1d2cd7196e99021a13285db1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Torkel=20=C3=96degaard?= Date: Thu, 19 Mar 2015 10:32:47 -0400 Subject: [PATCH 1/2] Fixed small issue when using 'Save As', dashboard version was not reset --- pkg/models/dashboards.go | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/pkg/models/dashboards.go b/pkg/models/dashboards.go index 4043063278e..7f39dbc74c7 100644 --- a/pkg/models/dashboards.go +++ b/pkg/models/dashboards.go @@ -14,6 +14,7 @@ var ( ErrDashboardVersionMismatch = errors.New("The dashboard has been changed by someone else") ) +// Dashboard model type Dashboard struct { Id int64 Slug string @@ -27,6 +28,7 @@ type Dashboard struct { Data map[string]interface{} } +// NewDashboard creates a new dashboard func NewDashboard(title string) *Dashboard { dash := &Dashboard{} dash.Data = make(map[string]interface{}) @@ -36,6 +38,7 @@ func NewDashboard(title string) *Dashboard { return dash } +// GetTags turns the tags in data json into go string array func (dash *Dashboard) GetTags() []string { jsonTags := dash.Data["tags"] if jsonTags == nil { @@ -50,6 +53,7 @@ func (dash *Dashboard) GetTags() []string { return b } +// GetDashboardModel turns the command into the savable model func (cmd *SaveDashboardCommand) GetDashboardModel() *Dashboard { dash := &Dashboard{} dash.Data = cmd.Dashboard @@ -63,15 +67,19 @@ func (cmd *SaveDashboardCommand) GetDashboardModel() *Dashboard { if dash.Data["version"] != nil { dash.Version = int(dash.Data["version"].(float64)) } + } else { + dash.Data["version"] = 0 } return dash } +// GetString a func (dash *Dashboard) GetString(prop string) string { return dash.Data[prop].(string) } +// UpdateSlug updates the slug func (dash *Dashboard) UpdateSlug() { title := strings.ToLower(dash.Data["title"].(string)) re := regexp.MustCompile("[^\\w ]+") From a8363f02b8440267ed19bdb3471fe42944962b91 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Torkel=20=C3=96degaard?= Date: Thu, 19 Mar 2015 15:16:47 -0400 Subject: [PATCH 2/2] Small changes to log scale handling, #452 --- src/app/panels/graph/axisEditor.html | 4 ++-- src/app/panels/graph/graph.js | 15 ++++++++------- src/app/panels/graph/module.js | 6 +++--- src/css/less/tightform.less | 4 ---- 4 files changed, 13 insertions(+), 16 deletions(-) diff --git a/src/app/panels/graph/axisEditor.html b/src/app/panels/graph/axisEditor.html index 40391995fc4..1d8e459be3b 100644 --- a/src/app/panels/graph/axisEditor.html +++ b/src/app/panels/graph/axisEditor.html @@ -34,7 +34,7 @@ Scale type
  • - +
  • Label @@ -79,7 +79,7 @@ Scale type
  • - +
  • Label diff --git a/src/app/panels/graph/graph.js b/src/app/panels/graph/graph.js index 5e2066466ca..e7cdba21dd2 100755 --- a/src/app/panels/graph/graph.js +++ b/src/app/panels/graph/graph.js @@ -351,7 +351,7 @@ function (angular, $, kbn, moment, _, GraphTooltip) { show: scope.panel['y-axis'], min: scope.panel.grid.leftMin, index: 1, - scale: scope.panel.grid.leftScale, + logBase: scope.panel.grid.leftLogBase, max: scope.panel.percentage && scope.panel.stack ? 100 : scope.panel.grid.leftMax, }; @@ -360,7 +360,7 @@ function (angular, $, kbn, moment, _, GraphTooltip) { if (_.findWhere(data, {yaxis: 2})) { var secondY = _.clone(defaults); secondY.index = 2, - secondY.scale = scope.panel.grid.rightScale; + secondY.logBase = scope.panel.grid.rightLogBase; secondY.position = 'right'; secondY.min = scope.panel.grid.rightMin; secondY.max = scope.panel.percentage && scope.panel.stack ? 100 : scope.panel.grid.rightMax; @@ -375,7 +375,7 @@ function (angular, $, kbn, moment, _, GraphTooltip) { } function applyLogScale(axis, data) { - if (axis.scale !== 2) { + if (axis.logBase !== 10) { return; } @@ -393,22 +393,23 @@ function (angular, $, kbn, moment, _, GraphTooltip) { } if (max === null) { - max = 10000000000; + max = Number.MAX_VALUE; } } - axis.ticks = [0, 1]; + axis.min = axis.min !== null ? axis.min : 1; + axis.ticks = [1]; var tick = 1; while (true) { - tick = tick*10; + tick = tick * axis.logBase; axis.ticks.push(tick); if (tick > max) { break; } } - axis.transform = function(v) { return Math.log(v+0.1); }; + axis.transform = function(v) { return Math.log(v+0.001); }; axis.inverseTransform = function (v) { return Math.pow(10,v); }; } diff --git a/src/app/panels/graph/module.js b/src/app/panels/graph/module.js index 485e7593b73..98e5baf1e55 100644 --- a/src/app/panels/graph/module.js +++ b/src/app/panels/graph/module.js @@ -53,12 +53,12 @@ function (angular, app, $, _, kbn, moment, TimeSeries, PanelMeta) { y_formats : ['short', 'short'], // grid options grid : { - leftScale: 1, + leftLogBase: 1, leftMax: null, rightMax: null, leftMin: null, rightMin: null, - rightScale: 1, + rightLogBase: 1, threshold1: null, threshold2: null, threshold1Color: 'rgba(216, 200, 27, 0.27)', @@ -116,7 +116,7 @@ function (angular, app, $, _, kbn, moment, TimeSeries, PanelMeta) { _.defaults($scope.panel.grid, _d.grid); _.defaults($scope.panel.legend, _d.legend); - $scope.scaleTypes = {'linear': 1, 'log (base 10)': 2}; + $scope.logScales = {'linear': 1, 'log (base 10)': 10}; $scope.hiddenSeries = {}; $scope.seriesList = []; diff --git a/src/css/less/tightform.less b/src/css/less/tightform.less index 3618ddd020b..799d6119279 100644 --- a/src/css/less/tightform.less +++ b/src/css/less/tightform.less @@ -5,10 +5,6 @@ background: @grafanaTargetBackground; width: 100%; - .dropdown { - padding: 0; margin: 0; - } - &:last-child, &.last { border-bottom: 1px solid @grafanaTargetBorder; }