Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
N
nexpie-grafana-theme
Overview
Overview
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Registry
Registry
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Kornkitt Poolsup
nexpie-grafana-theme
Commits
6ed69e3d
Unverified
Commit
6ed69e3d
authored
May 01, 2018
by
Carl Bergquist
Committed by
GitHub
May 01, 2018
Browse files
Options
Browse Files
Download
Plain Diff
Merge pull request #11775 from knweiss/unindent
Opportunities to unindent code (unindent)
parents
2b93cbbf
893a91af
Hide whitespace changes
Inline
Side-by-side
Showing
8 changed files
with
126 additions
and
133 deletions
+126
-133
pkg/api/common.go
+2
-4
pkg/components/dynmap/dynmap.go
+23
-29
pkg/components/simplejson/simplejson.go
+2
-4
pkg/middleware/dashboard_redirect.go
+15
-16
pkg/tsdb/mssql/mssql.go
+13
-12
pkg/tsdb/mysql/mysql.go
+13
-12
pkg/tsdb/postgres/postgres.go
+13
-12
pkg/tsdb/sql_engine.go
+45
-44
No files found.
pkg/api/common.go
View file @
6ed69e3d
...
...
@@ -99,10 +99,8 @@ func Error(status int, message string, err error) *NormalResponse {
data
[
"message"
]
=
message
}
if
err
!=
nil
{
if
setting
.
Env
!=
setting
.
PROD
{
data
[
"error"
]
=
err
.
Error
()
}
if
err
!=
nil
&&
setting
.
Env
!=
setting
.
PROD
{
data
[
"error"
]
=
err
.
Error
()
}
resp
:=
JSON
(
status
,
data
)
...
...
pkg/components/dynmap/dynmap.go
View file @
6ed69e3d
...
...
@@ -639,26 +639,24 @@ func (v *Value) Object() (*Object, error) {
valid
=
true
}
if
valid
{
obj
:=
new
(
Object
)
obj
.
valid
=
valid
m
:=
make
(
map
[
string
]
*
Value
)
if
!
valid
{
return
nil
,
ErrNotObject
}
obj
:=
new
(
Object
)
obj
.
valid
=
valid
if
valid
{
for
key
,
element
:=
range
v
.
data
.
(
map
[
string
]
interface
{})
{
m
[
key
]
=
&
Value
{
element
,
true
}
m
:=
make
(
map
[
string
]
*
Value
)
}
if
valid
{
for
key
,
element
:=
range
v
.
data
.
(
map
[
string
]
interface
{})
{
m
[
key
]
=
&
Value
{
element
,
true
}
}
obj
.
data
=
v
.
data
obj
.
m
=
m
return
obj
,
nil
}
return
nil
,
ErrNotObject
obj
.
data
=
v
.
data
obj
.
m
=
m
return
obj
,
nil
}
// Attempts to typecast the current value into an object arrau.
...
...
@@ -678,23 +676,19 @@ func (v *Value) ObjectArray() ([]*Object, error) {
// Unsure if this is a good way to use slices, it's probably not
var
slice
[]
*
Object
if
valid
{
for
_
,
element
:=
range
v
.
data
.
([]
interface
{})
{
childValue
:=
Value
{
element
,
true
}
childObject
,
err
:=
childValue
.
Object
()
if
!
valid
{
return
nil
,
ErrNotObjectArray
}
for
_
,
element
:=
range
v
.
data
.
([]
interface
{})
{
childValue
:=
Value
{
element
,
true
}
childObject
,
err
:=
childValue
.
Object
()
if
err
!=
nil
{
return
nil
,
ErrNotObjectArray
}
slice
=
append
(
slice
,
childObject
)
if
err
!=
nil
{
return
nil
,
ErrNotObjectArray
}
return
slice
,
nil
slice
=
append
(
slice
,
childObject
)
}
return
nil
,
ErrNotObjectArray
return
slice
,
nil
}
// Attempts to typecast the current value into a string.
...
...
pkg/components/simplejson/simplejson.go
View file @
6ed69e3d
...
...
@@ -168,10 +168,8 @@ func (j *Json) GetPath(branch ...string) *Json {
// js.Get("top_level").Get("array").GetIndex(1).Get("key").Int()
func
(
j
*
Json
)
GetIndex
(
index
int
)
*
Json
{
a
,
err
:=
j
.
Array
()
if
err
==
nil
{
if
len
(
a
)
>
index
{
return
&
Json
{
a
[
index
]}
}
if
err
==
nil
&&
len
(
a
)
>
index
{
return
&
Json
{
a
[
index
]}
}
return
&
Json
{
nil
}
}
...
...
pkg/middleware/dashboard_redirect.go
View file @
6ed69e3d
...
...
@@ -24,12 +24,12 @@ func RedirectFromLegacyDashboardURL() macaron.Handler {
return
func
(
c
*
m
.
ReqContext
)
{
slug
:=
c
.
Params
(
"slug"
)
if
slug
!
=
""
{
if
url
,
err
:=
getDashboardURLBySlug
(
c
.
OrgId
,
slug
);
err
==
nil
{
url
=
fmt
.
Sprintf
(
"%s?%s"
,
url
,
c
.
Req
.
URL
.
RawQuery
)
c
.
Redirect
(
url
,
301
)
return
}
if
slug
=
=
""
{
return
}
if
url
,
err
:=
getDashboardURLBySlug
(
c
.
OrgId
,
slug
);
err
==
nil
{
url
=
fmt
.
Sprintf
(
"%s?%s"
,
url
,
c
.
Req
.
URL
.
RawQuery
)
c
.
Redirect
(
url
,
301
)
}
}
}
...
...
@@ -39,17 +39,16 @@ func RedirectFromLegacyDashboardSoloURL() macaron.Handler {
slug
:=
c
.
Params
(
"slug"
)
renderRequest
:=
c
.
QueryBool
(
"render"
)
if
slug
!=
""
{
if
url
,
err
:=
getDashboardURLBySlug
(
c
.
OrgId
,
slug
);
err
==
nil
{
if
renderRequest
&&
strings
.
Contains
(
url
,
setting
.
AppSubUrl
)
{
url
=
strings
.
Replace
(
url
,
setting
.
AppSubUrl
,
""
,
1
)
}
url
=
strings
.
Replace
(
url
,
"/d/"
,
"/d-solo/"
,
1
)
url
=
fmt
.
Sprintf
(
"%s?%s"
,
url
,
c
.
Req
.
URL
.
RawQuery
)
c
.
Redirect
(
url
,
301
)
return
if
slug
==
""
{
return
}
if
url
,
err
:=
getDashboardURLBySlug
(
c
.
OrgId
,
slug
);
err
==
nil
{
if
renderRequest
&&
strings
.
Contains
(
url
,
setting
.
AppSubUrl
)
{
url
=
strings
.
Replace
(
url
,
setting
.
AppSubUrl
,
""
,
1
)
}
url
=
strings
.
Replace
(
url
,
"/d/"
,
"/d-solo/"
,
1
)
url
=
fmt
.
Sprintf
(
"%s?%s"
,
url
,
c
.
Req
.
URL
.
RawQuery
)
c
.
Redirect
(
url
,
301
)
}
}
}
pkg/tsdb/mssql/mssql.go
View file @
6ed69e3d
...
...
@@ -298,18 +298,19 @@ func (e MssqlQueryEndpoint) transformToTimeSeries(query *tsdb.Query, rows *core.
key
:=
elem
.
Value
.
(
string
)
result
.
Series
=
append
(
result
.
Series
,
pointsBySeries
[
key
])
if
fillMissing
{
series
:=
pointsBySeries
[
key
]
// fill in values from last fetched value till interval end
intervalStart
:=
series
.
Points
[
len
(
series
.
Points
)
-
1
][
1
]
.
Float64
intervalEnd
:=
float64
(
tsdbQuery
.
TimeRange
.
MustGetTo
()
.
UnixNano
()
/
1e6
)
// align interval start
intervalStart
=
math
.
Floor
(
intervalStart
/
fillInterval
)
*
fillInterval
for
i
:=
intervalStart
+
fillInterval
;
i
<
intervalEnd
;
i
+=
fillInterval
{
series
.
Points
=
append
(
series
.
Points
,
tsdb
.
TimePoint
{
fillValue
,
null
.
FloatFrom
(
i
)})
rowCount
++
}
if
!
fillMissing
{
break
}
series
:=
pointsBySeries
[
key
]
// fill in values from last fetched value till interval end
intervalStart
:=
series
.
Points
[
len
(
series
.
Points
)
-
1
][
1
]
.
Float64
intervalEnd
:=
float64
(
tsdbQuery
.
TimeRange
.
MustGetTo
()
.
UnixNano
()
/
1e6
)
// align interval start
intervalStart
=
math
.
Floor
(
intervalStart
/
fillInterval
)
*
fillInterval
for
i
:=
intervalStart
+
fillInterval
;
i
<
intervalEnd
;
i
+=
fillInterval
{
series
.
Points
=
append
(
series
.
Points
,
tsdb
.
TimePoint
{
fillValue
,
null
.
FloatFrom
(
i
)})
rowCount
++
}
}
...
...
pkg/tsdb/mysql/mysql.go
View file @
6ed69e3d
...
...
@@ -309,18 +309,19 @@ func (e MysqlQueryEndpoint) transformToTimeSeries(query *tsdb.Query, rows *core.
key
:=
elem
.
Value
.
(
string
)
result
.
Series
=
append
(
result
.
Series
,
pointsBySeries
[
key
])
if
fillMissing
{
series
:=
pointsBySeries
[
key
]
// fill in values from last fetched value till interval end
intervalStart
:=
series
.
Points
[
len
(
series
.
Points
)
-
1
][
1
]
.
Float64
intervalEnd
:=
float64
(
tsdbQuery
.
TimeRange
.
MustGetTo
()
.
UnixNano
()
/
1e6
)
// align interval start
intervalStart
=
math
.
Floor
(
intervalStart
/
fillInterval
)
*
fillInterval
for
i
:=
intervalStart
+
fillInterval
;
i
<
intervalEnd
;
i
+=
fillInterval
{
series
.
Points
=
append
(
series
.
Points
,
tsdb
.
TimePoint
{
fillValue
,
null
.
FloatFrom
(
i
)})
rowCount
++
}
if
!
fillMissing
{
break
}
series
:=
pointsBySeries
[
key
]
// fill in values from last fetched value till interval end
intervalStart
:=
series
.
Points
[
len
(
series
.
Points
)
-
1
][
1
]
.
Float64
intervalEnd
:=
float64
(
tsdbQuery
.
TimeRange
.
MustGetTo
()
.
UnixNano
()
/
1e6
)
// align interval start
intervalStart
=
math
.
Floor
(
intervalStart
/
fillInterval
)
*
fillInterval
for
i
:=
intervalStart
+
fillInterval
;
i
<
intervalEnd
;
i
+=
fillInterval
{
series
.
Points
=
append
(
series
.
Points
,
tsdb
.
TimePoint
{
fillValue
,
null
.
FloatFrom
(
i
)})
rowCount
++
}
}
...
...
pkg/tsdb/postgres/postgres.go
View file @
6ed69e3d
...
...
@@ -289,18 +289,19 @@ func (e PostgresQueryEndpoint) transformToTimeSeries(query *tsdb.Query, rows *co
key
:=
elem
.
Value
.
(
string
)
result
.
Series
=
append
(
result
.
Series
,
pointsBySeries
[
key
])
if
fillMissing
{
series
:=
pointsBySeries
[
key
]
// fill in values from last fetched value till interval end
intervalStart
:=
series
.
Points
[
len
(
series
.
Points
)
-
1
][
1
]
.
Float64
intervalEnd
:=
float64
(
tsdbQuery
.
TimeRange
.
MustGetTo
()
.
UnixNano
()
/
1e6
)
// align interval start
intervalStart
=
math
.
Floor
(
intervalStart
/
fillInterval
)
*
fillInterval
for
i
:=
intervalStart
+
fillInterval
;
i
<
intervalEnd
;
i
+=
fillInterval
{
series
.
Points
=
append
(
series
.
Points
,
tsdb
.
TimePoint
{
fillValue
,
null
.
FloatFrom
(
i
)})
rowCount
++
}
if
!
fillMissing
{
break
}
series
:=
pointsBySeries
[
key
]
// fill in values from last fetched value till interval end
intervalStart
:=
series
.
Points
[
len
(
series
.
Points
)
-
1
][
1
]
.
Float64
intervalEnd
:=
float64
(
tsdbQuery
.
TimeRange
.
MustGetTo
()
.
UnixNano
()
/
1e6
)
// align interval start
intervalStart
=
math
.
Floor
(
intervalStart
/
fillInterval
)
*
fillInterval
for
i
:=
intervalStart
+
fillInterval
;
i
<
intervalEnd
;
i
+=
fillInterval
{
series
.
Points
=
append
(
series
.
Points
,
tsdb
.
TimePoint
{
fillValue
,
null
.
FloatFrom
(
i
)})
rowCount
++
}
}
...
...
pkg/tsdb/sql_engine.go
View file @
6ed69e3d
...
...
@@ -141,50 +141,51 @@ func (e *DefaultSqlEngine) Query(
// ConvertSqlTimeColumnToEpochMs converts column named time to unix timestamp in milliseconds
// to make native datetime types and epoch dates work in annotation and table queries.
func
ConvertSqlTimeColumnToEpochMs
(
values
RowValues
,
timeIndex
int
)
{
if
timeIndex
>=
0
{
switch
value
:=
values
[
timeIndex
]
.
(
type
)
{
case
time
.
Time
:
values
[
timeIndex
]
=
EpochPrecisionToMs
(
float64
(
value
.
UnixNano
()))
case
*
time
.
Time
:
if
value
!=
nil
{
values
[
timeIndex
]
=
EpochPrecisionToMs
(
float64
((
*
value
)
.
UnixNano
()))
}
case
int64
:
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
value
)))
case
*
int64
:
if
value
!=
nil
{
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
*
value
)))
}
case
uint64
:
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
value
)))
case
*
uint64
:
if
value
!=
nil
{
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
*
value
)))
}
case
int32
:
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
value
)))
case
*
int32
:
if
value
!=
nil
{
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
*
value
)))
}
case
uint32
:
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
value
)))
case
*
uint32
:
if
value
!=
nil
{
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
*
value
)))
}
case
float64
:
values
[
timeIndex
]
=
EpochPrecisionToMs
(
value
)
case
*
float64
:
if
value
!=
nil
{
values
[
timeIndex
]
=
EpochPrecisionToMs
(
*
value
)
}
case
float32
:
values
[
timeIndex
]
=
EpochPrecisionToMs
(
float64
(
value
))
case
*
float32
:
if
value
!=
nil
{
values
[
timeIndex
]
=
EpochPrecisionToMs
(
float64
(
*
value
))
}
if
timeIndex
<
0
{
return
}
switch
value
:=
values
[
timeIndex
]
.
(
type
)
{
case
time
.
Time
:
values
[
timeIndex
]
=
EpochPrecisionToMs
(
float64
(
value
.
UnixNano
()))
case
*
time
.
Time
:
if
value
!=
nil
{
values
[
timeIndex
]
=
EpochPrecisionToMs
(
float64
((
*
value
)
.
UnixNano
()))
}
case
int64
:
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
value
)))
case
*
int64
:
if
value
!=
nil
{
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
*
value
)))
}
case
uint64
:
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
value
)))
case
*
uint64
:
if
value
!=
nil
{
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
*
value
)))
}
case
int32
:
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
value
)))
case
*
int32
:
if
value
!=
nil
{
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
*
value
)))
}
case
uint32
:
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
value
)))
case
*
uint32
:
if
value
!=
nil
{
values
[
timeIndex
]
=
int64
(
EpochPrecisionToMs
(
float64
(
*
value
)))
}
case
float64
:
values
[
timeIndex
]
=
EpochPrecisionToMs
(
value
)
case
*
float64
:
if
value
!=
nil
{
values
[
timeIndex
]
=
EpochPrecisionToMs
(
*
value
)
}
case
float32
:
values
[
timeIndex
]
=
EpochPrecisionToMs
(
float64
(
value
))
case
*
float32
:
if
value
!=
nil
{
values
[
timeIndex
]
=
EpochPrecisionToMs
(
float64
(
*
value
))
}
}
}
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment