2 * Copyright 2010-2013 Ben Birch
4 * Licensed under the Apache License, Version 2.0 (the "License");
5 * you may not use this software except in compliance with the License.
6 * You may obtain a copy of the License at
8 * http://www.apache.org/licenses/LICENSE-2.0
10 * Unless required by applicable law or agreed to in writing, software
11 * distributed under the License is distributed on an "AS IS" BASIS,
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13 * See the License for the specific language governing permissions and
14 * limitations under the License.
17 "General.Elasticsearch": "Elasticsearch",
18 "General.LoadingAggs": "Loading Aggregations...",
19 "General.Searching": "Searching...",
20 "General.Search": "Search",
21 "General.Help": "Help",
22 "General.HelpGlyph": "?",
23 "General.CloseGlyph": "X",
24 "General.RefreshResults": "Refresh",
25 "General.ManualRefresh": "Manual Refresh",
26 "General.RefreshQuickly": "Refresh quickly",
27 "General.Refresh5seconds": "Refresh every 5 seconds",
28 "General.Refresh1minute": "Refresh every minute",
29 "AliasForm.AliasName": "Alias Name",
30 "AliasForm.NewAliasForIndex": "New Alias for {0}",
31 "AliasForm.DeleteAliasMessage": "type ''{0}'' to delete {1}. There is no undo",
32 "AnyRequest.DisplayOptions" : "Display Options",
33 "AnyRequest.AsGraph" : "Graph Results",
34 "AnyRequest.AsJson" : "Show Raw JSON",
35 "AnyRequest.AsTable" : "Show Search Results Table",
36 "AnyRequest.History" : "History",
37 "AnyRequest.RepeatRequest" : "Repeat Request",
38 "AnyRequest.RepeatRequestSelect" : "Repeat request every ",
39 "AnyRequest.Transformer" : "Result Transformer",
40 "AnyRequest.Pretty": "Pretty",
41 "AnyRequest.Query" : "Query",
42 "AnyRequest.Request": "Request",
43 "AnyRequest.Requesting": "Requesting...",
44 "AnyRequest.ValidateJSON": "Validate JSON",
45 "Browser.Title": "Browser",
46 "Browser.ResultSourcePanelTitle": "Result Source",
47 "Command.DELETE": "DELETE",
48 "Command.SHUTDOWN": "SHUTDOWN",
49 "Command.DeleteAliasMessage": "Delete Alias?",
50 "ClusterOverView.IndexName": "Index Name",
51 "ClusterOverview.NumShards": "Number of Shards",
52 "ClusterOverview.NumReplicas": "Number of Replicas",
53 "ClusterOverview.NewIndex": "New Index",
54 "IndexActionsMenu.Title": "Actions",
55 "IndexActionsMenu.NewAlias": "New Alias...",
56 "IndexActionsMenu.Refresh": "Refresh",
57 "IndexActionsMenu.Flush": "Flush",
58 "IndexActionsMenu.Optimize": "Optimize...",
59 "IndexActionsMenu.Snapshot": "Gateway Snapshot",
60 "IndexActionsMenu.Analyser": "Test Analyser",
61 "IndexActionsMenu.Open": "Open",
62 "IndexActionsMenu.Close": "Close",
63 "IndexActionsMenu.Delete": "Delete...",
64 "IndexInfoMenu.Title": "Info",
65 "IndexInfoMenu.Status": "Index Status",
66 "IndexInfoMenu.Metadata": "Index Metadata",
67 "IndexCommand.TextToAnalyze": "Text to Analyse",
68 "IndexCommand.ShutdownMessage": "type ''{0}'' to shutdown {1}. Node can NOT be restarted from this interface",
69 "IndexOverview.PageTitle": "Indices Overview",
70 "IndexSelector.NameWithDocs": "{0} ({1} docs)",
71 "IndexSelector.SearchIndexForDocs": "Search {0} for documents where:",
72 "FilterBrowser.OutputType": "Output Results: {0}",
73 "FilterBrowser.OutputSize": "Number of Results: {0}",
74 "Header.ClusterHealth": "cluster health: {0} ({1} of {2})",
75 "Header.ClusterNotConnected": "cluster health: not connected",
76 "Header.Connect": "Connect",
77 "Nav.AnyRequest": "Any Request",
78 "Nav.Browser": "Browser",
79 "Nav.ClusterHealth": "Cluster Health",
80 "Nav.ClusterState": "Cluster State",
81 "Nav.ClusterNodes": "Nodes Info",
83 "Nav.NodeStats": "Nodes Stats",
84 "Nav.Overview": "Overview",
85 "Nav.Indices": "Indices",
86 "Nav.Plugins": "Plugins",
87 "Nav.Status": "Indices Stats",
88 "Nav.Templates": "Templates",
89 "Nav.StructuredQuery": "Structured Query",
90 "NodeActionsMenu.Title": "Actions",
91 "NodeActionsMenu.Shutdown": "Shutdown...",
92 "NodeInfoMenu.Title": "Info",
93 "NodeInfoMenu.ClusterNodeInfo": "Cluster Node Info",
94 "NodeInfoMenu.NodeStats": "Node Stats",
95 "NodeType.Client": "Client Node",
96 "NodeType.Coord": "Coordinator",
97 "NodeType.Master": "Master Node",
98 "NodeType.Tribe": "Tribe Node",
99 "NodeType.Worker": "Worker Node",
100 "NodeType.Unassigned": "Unassigned",
101 "OptimizeForm.OptimizeIndex": "Optimize {0}",
102 "OptimizeForm.MaxSegments": "Maximum # Of Segments",
103 "OptimizeForm.ExpungeDeletes": "Only Expunge Deletes",
104 "OptimizeForm.FlushAfter": "Flush After Optimize",
105 "OptimizeForm.WaitForMerge": "Wait For Merge",
106 "Overview.PageTitle" : "Cluster Overview",
107 "Output.JSON": "JSON",
108 "Output.Table": "Table",
110 "Output.ShowSource": "Show query source",
111 "Preference.SortCluster": "Sort Cluster",
112 "Sort.ByName": "By Name",
113 "Sort.ByAddress": "By Address",
114 "Sort.ByType": "By Type",
115 "Preference.SortIndices": "Sort Indices",
116 "SortIndices.Descending": "Descending",
117 "SortIndices.Ascending": "Ascending",
118 "Preference.ViewAliases": "View Aliases",
119 "ViewAliases.Grouped": "Grouped",
120 "ViewAliases.List": "List",
121 "ViewAliases.None": "None",
122 "Overview.IndexFilter": "Index Filter",
123 "TableResults.Summary": "Searched {0} of {1} shards. {2} hits. {3} seconds",
124 "QueryFilter.AllIndices": "All Indices",
125 "QueryFilter.AnyValue": "any",
126 "QueryFilter-Header-Indices": "Indices",
127 "QueryFilter-Header-Types": "Types",
128 "QueryFilter-Header-Fields": "Fields",
129 "QueryFilter.DateRangeHint.from": "From : {0}",
130 "QueryFilter.DateRangeHint.to": " To : {0}",
131 "Query.FailAndUndo": "Query Failed. Undoing last changes",
132 "StructuredQuery.ShowRawJson": "Show Raw JSON"
136 "AnyRequest.TransformerHelp" : "\
137 <p>The Result Transformer can be used to post process the raw json results from a request into a more useful format.</p>\
138 <p>The transformer should contain the body of a javascript function. The return value from the function becomes the new value passed to the json printer</p>\
140 <code>return root.hits.hits[0];</code> would traverse a result set to show just the first match<br>\
141 <code>return Object.keys(root.nodes).reduce(function(tot, node) { return tot + root.nodes[node].os.mem.used_in_bytes; }, 0);</code> would return the total memory used across an entire cluster<br></p>\
142 <p>The following functions are available and can be useful processing arrays and objects<br>\
144 <li><i>Object.keys</i>(object) := array</li>\
145 <li>array.<i>forEach</i>(function(prop, index))</li>\
146 <li>array.<i>map</i>(function(prop, index)) := array</li>\
147 <li>array.<i>reduce</i>(function(accumulator, prop, index), initial_value) := final_value</li>\
149 <p>When Repeat Request is running, an extra parameter called prev is passed to the transformation function. This allows comparisons, and cumulative graphing</p>\
151 <code>var la = [ root.nodes[Object.keys(root.nodes)[0]].os.load_average[0] ]; return prev ? la.concat(prev) : la;</code> would return the load average on the first cluster node over the last minute\
152 This could be fed into the Graph to produce a load graph for the node\
157 "AnyRequest.DisplayOptionsHelp" : "\
158 <p>Raw Json: shows complete results of the query and transformation in raw JSON format </p>\
159 <p>Graph Results: To produce a graph of your results, use the result transformer to produce an array of values</p>\
160 <p>Search Results Table: If your query is a search, you can display the results of the search in a table.</p>\
165 "QueryFilter.DateRangeHelp" : "\
166 <p>Date fields accept a natural language query to produce a From and To date that form a range that the results are queried over.</p>\
167 <p>The following formats are supported:</p>\
169 <li><b>Keywords / Key Phrases</b><br>\
170 <code>now<br> today<br> tomorrow<br> yesterday<br> last / this / next + week / month / year</code><br>\
171 searches for dates matching the keyword. <code>last year</code> would search all of last year.</li>\
172 <li><b>Ranges</b><br>\
173 <code>1000 secs<br> 5mins<br> 1day<br> 2days<br> 80d<br> 9 months<br> 2yrs</code> (spaces optional, many synonyms for range qualifiers)<br>\
174 Create a search range centered on <code>now</code> extending into the past and future by the amount specified.</li>\
175 <li><b>DateTime and Partial DateTime</b><br>\
176 <code>2011<br> 2011-01<br> 2011-01-18<br> 2011-01-18 12<br> 2011-01-18 12:32<br> 2011-01-18 12:32:45</code><br>\
177 these formats specify a specific date range. <code>2011</code> would search the whole of 2011, while <code>2011-01-18 12:32:45</code> would only search for results in that 1 second range</li>\
178 <li><b>Time and Time Partials</b><br>\
179 <code>12<br> 12:32<br> 12:32:45</code><br>\
180 these formats search for a particular time during the current day. <code>12:32</code> would search that minute during today</li>\
181 <li><b>Date Ranges</b><br>\
182 <code>2010 -> 2011<br> last week -> next week<br> 2011-05 -><br> < now</code><br>\
183 A Date Range is created by specifying two dates in any format (Keyword / DateTime / Time) separated by < or -> (both do the same thing). If either end of the date range is missing, it is the same as having no constraint in that direction.</li>\
184 <li><b>Date Range using Offset</b><br>\
185 <code>2010 -> 1yr<br> 3mins < now</code>\
186 Searches the specified date including the range in the direction specified.</li>\
187 <li><b>Anchored Ranges</b><br>\
188 <code>2010-05-13 05:13 <> 10m<br> now <> 1yr<br> lastweek <> 1month</code><br>\
189 Similar to above except the range is extend in both directions from the anchor date</li>\