string[]
| |
| [filterable](./kibana-plugin-plugins-data-public.indexpatternfield.filterable.md) | | boolean
| |
| [format](./kibana-plugin-plugins-data-public.indexpatternfield.format.md) | | any
| |
+| [indexPattern](./kibana-plugin-plugins-data-public.indexpatternfield.indexpattern.md) | | IndexPattern
| |
| [lang](./kibana-plugin-plugins-data-public.indexpatternfield.lang.md) | | string
| |
| [name](./kibana-plugin-plugins-data-public.indexpatternfield.name.md) | | string
| |
| [script](./kibana-plugin-plugins-data-public.indexpatternfield.script.md) | | string
| |
diff --git a/docs/ingest_manager/index.asciidoc b/docs/ingest_manager/index.asciidoc
index 1254f412e14c5..22afa88c919e4 100644
--- a/docs/ingest_manager/index.asciidoc
+++ b/docs/ingest_manager/index.asciidoc
@@ -113,7 +113,7 @@ Ingest Management enforces an indexing strategy to allow the system to automatic
{type}-{dataset}-{namespace}
```
-The `{type}` can be `logs` or `metrics`. The `{namespace}` is the part where the user can use free form. The only two requirement are that it has only characters allowed in an Elasticsearch index name and does NOT contain a `-`. The `dataset` is defined by the data that is indexed. The same requirements as for the namespace apply. It is expected that the fields for type, namespace and dataset are part of each event and are constant keywords.
+The `{type}` can be `logs` or `metrics`. The `{namespace}` is the part where the user can use free form. The only two requirement are that it has only characters allowed in an Elasticsearch index name and does NOT contain a `-`. The `dataset` is defined by the data that is indexed. The same requirements as for the namespace apply. It is expected that the fields for type, namespace and dataset are part of each event and are constant keywords. If there is a dataset or a namespace with a `-` inside, it is recommended to replace it either by a `.` or a `_`.
Note: More `{type}`s might be added in the future like `apm` and `endpoint`.
@@ -126,6 +126,8 @@ This indexing strategy has a few advantages:
* Having a global metrics and logs template, allows to create new indices on demand which still follow the convention. This is common in the case of k8s as an example.
* Constant keywords allow to narrow down the indices we need to access for querying very efficiently. This is especially relevant in environments which a large number of indices or with indices on slower nodes.
+Overall it creates smaller indices in size, makes querying more efficient and allows users to define their own naming parts in namespace and still benefiting from all features that can be built on top of the indexing startegy.
+
=== Ingest Pipeline
The ingest pipelines for a specific dataset will have the following naming scheme:
diff --git a/docs/settings/apm-settings.asciidoc b/docs/settings/apm-settings.asciidoc
index 91bbef5690fd5..fd53c3aeb3605 100644
--- a/docs/settings/apm-settings.asciidoc
+++ b/docs/settings/apm-settings.asciidoc
@@ -5,7 +5,10 @@
diff --git a/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/edit_index_pattern/edit_index_pattern.js b/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/edit_index_pattern/edit_index_pattern.js
index c65054f583ef2..69184a513f53a 100644
--- a/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/edit_index_pattern/edit_index_pattern.js
+++ b/src/legacy/core_plugins/kibana/public/management/sections/index_patterns/edit_index_pattern/edit_index_pattern.js
@@ -18,7 +18,7 @@
*/
import _ from 'lodash';
-import './index_header';
+import { IndexHeader } from './index_header';
import './create_edit_field';
import { docTitle } from 'ui/doc_title';
import { KbnUrlProvider } from 'ui/url';
@@ -44,6 +44,7 @@ import { createEditIndexPatternPageStateContainer } from './edit_index_pattern_s
const REACT_SOURCE_FILTERS_DOM_ELEMENT_ID = 'reactSourceFiltersTable';
const REACT_INDEXED_FIELDS_DOM_ELEMENT_ID = 'reactIndexedFieldsTable';
const REACT_SCRIPTED_FIELDS_DOM_ELEMENT_ID = 'reactScriptedFieldsTable';
+const REACT_INDEX_HEADER_DOM_ELEMENT_ID = 'reactIndexHeader';
const TAB_INDEXED_FIELDS = 'indexedFields';
const TAB_SCRIPTED_FIELDS = 'scriptedFields';
@@ -160,6 +161,33 @@ function destroyIndexedFieldsTable() {
node && unmountComponentAtNode(node);
}
+function destroyIndexHeader() {
+ const node = document.getElementById(REACT_INDEX_HEADER_DOM_ELEMENT_ID);
+ node && unmountComponentAtNode(node);
+}
+
+function renderIndexHeader($scope, config) {
+ $scope.$$postDigest(() => {
+ const node = document.getElementById(REACT_INDEX_HEADER_DOM_ELEMENT_ID);
+ if (!node) {
+ return;
+ }
+
+ render(
+