Skip to content

Commit e6c2d6b

Browse files
committed
1.29.0 release
1 parent 2c2eb7b commit e6c2d6b

19 files changed

+471
-48
lines changed

CHANGELOG.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,17 @@
1+
# 1.29.0 (04/28/2016)
2+
3+
## Features
4+
5+
- Elasticsearch Data Source: submits searches to Elasticsearch and parses the results. Optionally supports AWS IAM request signing to enable use with AWS Elasticsearch service
6+
7+
- Backward Dashboard Rotation: enabled rotating Dashboards backwards from the current page without requiring forward rotation beforehand
8+
9+
## Bug Fixes
10+
11+
- Cyclotron logo link: fixed instances when clicking would not redirect to the Home page
12+
13+
- Revision History: fixed failures when viewing very large Revision Histories by adding a MongoDB index
14+
115
# 1.28.0 (04/14/2016)
216

317
## Features

README.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -36,7 +36,7 @@ Dashboards are defined declaratively as a JSON document, which contains all the
3636

3737
* Included Widgets: annotationChart, chart, table, number, html, javascript, iframe, image, qrcode, stoplight, treemap, youtube
3838

39-
* Included Data Sources: JSON, Graphite, Splunk, JavaScript
39+
* Included Data Sources: CyclotronData, Elasticsearch, Javascript, JSON, Graphite, Splunk
4040

4141
* Built-in data loading, filtering, and sorting
4242

cyclotron-site/app/partials/header.jade

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
.row.cyclotron-header
2-
h1(ui-sref='home')
2+
h1(ui-sref='home' ui-sref-opts='{reload: true}')
33
img.logo(src='/img/favicon64.png', alt='Logo')
44
| Cyclotron
55
.links

cyclotron-site/app/partials/help/about.jade

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ h4 Features
3838
ul
3939
li Declarative definition of Dashboards, requiring no HTML or JavaScript (although it's optionally available)
4040
li Included Widgets: chart, html, iframe, image, javascript, number, qrcode, stoplight, table, youtube
41-
li Included Data Sources: CyclotronData, Graphite, JavaScript, JSON, Splunk
41+
li Included Data Sources: CyclotronData, Elasticsearch, Graphite, JavaScript, JSON, Splunk
4242
li Built-in data loading, filtering, and sorting
4343
li LDAP/Active Directory Integration
4444
li Permissions for viewing and editing Dashboards
Lines changed: 64 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,64 @@
1+
h3 Elasticsearch Data Source
2+
3+
p The Elasticsearch Data Source is a thin wrapper around the Elasticsearch API, making it easier to submit searches and process the results. For more fine-tuned control around the requests, it may be preferable to use the JSON Data Source instead.
4+
5+
P Please note that it may be necessary to set the optional
6+
em proxy
7+
| property in the Data Source in order to access web sites or services in other domains.
8+
| This property lists other Cyclotron servers which may have the required connectivity.
9+
| By default, this Data Source uses the current Cyclotron environment to proxy the request.
10+
11+
p Examples of the Elasticsearch Data Source are available on the
12+
a(href='/example-datasource-elasticsearch') example-datasource-elasticsearch
13+
| dashboard
14+
15+
property-table(properties='config.dashboard.properties.dataSources.options.elasticsearch.properties')
16+
17+
h4 API Name
18+
19+
p The
20+
em method
21+
| property (displayed as API Name) controls which Elasticsearch endpoint to submit the request to. By default this is "_search", but it can by changed to any valid endpoint (e.g. "_msearch", "_suggest").
22+
23+
h4 Response Adapter
24+
25+
p The
26+
em responseAdapter
27+
| property controls how Cyclotron handles the result that Elasticsearch provides. The default value,
28+
em "auto"
29+
| , automatically selects between
30+
em "hits"
31+
| and
32+
em "aggregations"
33+
| by choosing
34+
em "aggregations"
35+
| when the response includes aggregations, otherwise
36+
em "hits
37+
| . Both
38+
em "hits"
39+
| and
40+
em "aggregations"
41+
| can be selected manually as well. If a Elasticsearch request returns both hits and aggregations, custom processing will be needed to consume both at once. This is possible using the
42+
em "raw"
43+
| option, which returns the original response. In this case, the
44+
em postProcessor
45+
| option should be set to a JavaScript function that can handle the entire result.
46+
47+
48+
h4 Pre-Processor
49+
50+
p The Elasticsearch Data Source supports an optional pre-processor function that will be called before
51+
| the Data Source executes. For more details, see the main Data Sources page.
52+
53+
h4 Post-Processor
54+
55+
p The Elasticsearch Data Source supports an optional post-processor function that will be called after
56+
| data is loaded. For more details, see the main Data Sources page.
57+
58+
p The data that is sent to the Post-Processor will depend on the setting of the
59+
em responseAdapter
60+
| property. This property controls how the Elasticsearch response is converted into Cyclotron's tabular data format. The Post-Processor receives the output of whichever
61+
em responseAdapter
62+
| has been selected. In order to manually inspect the entire response, set
63+
em responseAdapter
64+
| to "raw".

cyclotron-site/app/partials/help/datasources/graphite.jade

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -5,19 +5,18 @@ p The Graphite Data Source connects to any Graphite server and uses the /render
55
a(href='http://graphite.readthedocs.org/en/latest/functions.html', target='_blank') Graphite functions
66
| .
77

8+
P Please note that it may be necessary to set the optional
9+
em proxy
10+
| property in the Data Source in order to access web sites or services in other domains.
11+
| This property lists other Cyclotron servers which may have the required connectivity.
12+
| By default, this Data Source uses the current Cyclotron environment to proxy the request.
13+
814
p Examples of the Graphite Data Source are available on the
915
a(href='/example-datasource-graphite') example-datasource-graphite
1016
| dashboard
1117

1218
property-table(properties='config.dashboard.properties.dataSources.options.graphite.properties')
1319

14-
p Under the covers, Cyclotron is proxying the Graphite requests through its own server. As a result, it
15-
| may be necessary to set the optional
16-
em proxy
17-
| property in the Data Source in order to access Graphite servers in other domains. This property lists
18-
| other Cyclotron servers which may have the required connectivity.
19-
| By default, this Data Source uses the current Cyclotron environment to proxy the request.
20-
2120
h4 Pre-Processor
2221

2322
p The Graphite Data Source supports an optional pre-processor function that will be called before

cyclotron-site/app/scripts/common/mixins.coffee

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -218,4 +218,14 @@ _.mixin({
218218

219219
_.assign obj, rep
220220

221+
# Flatten nested objects (no arrays)
222+
'flattenObject': (obj) ->
223+
return obj unless _.isObject(obj) and not _.isArray(obj)
224+
newObj = {}
225+
_.forOwn obj, (value, key) ->
226+
if _.isObject(value) and not _.isArray(value)
227+
_.assign newObj, _.flattenObject value
228+
else
229+
newObj[key] = value
230+
newObj
221231
})

0 commit comments

Comments
 (0)