diff --git a/src/core_plugins/kibana/server/tutorials/kafka_logs/index.js b/src/core_plugins/kibana/server/tutorials/kafka_logs/index.js index e69536abecfbfa..3ca03e2e616a67 100644 --- a/src/core_plugins/kibana/server/tutorials/kafka_logs/index.js +++ b/src/core_plugins/kibana/server/tutorials/kafka_logs/index.js @@ -17,6 +17,7 @@ * under the License. */ +import { i18n } from '@kbn/i18n'; import { TUTORIAL_CATEGORY } from '../../../common/tutorials/tutorial_category'; import { onPremInstructions, cloudInstructions, onPremCloudInstructions } from '../../../common/tutorials/filebeat_instructions'; @@ -27,17 +28,29 @@ export function kafkaLogsSpecProvider() { const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS']; return { id: 'kafkaLogs', - name: 'Kafka logs', + name: i18n.translate('kbn.server.tutorials.kafkaLogs.nameTitle', { + defaultMessage: 'Kafka logs', + }), category: TUTORIAL_CATEGORY.LOGGING, - shortDescription: 'Collect and parse logs created by Kafka.', - longDescription: 'The `kafka` Filebeat module parses logs created by Kafka.' + - ' [Learn more]({config.docs.beats.filebeat}/filebeat-module-kafka.html).', + shortDescription: i18n.translate('kbn.server.tutorials.kafkaLogs.shortDescription', { + defaultMessage: 'Collect and parse logs created by Kafka.', + }), + longDescription: i18n.translate('kbn.server.tutorials.kafkaLogs.longDescription', { + // eslint-disable-next-line no-multi-str + defaultMessage: 'The `kafka` Filebeat module parses logs created by Kafka. \ +[Learn more]({learnMoreLink}).', + values: { + learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-kafka.html', + }, + }), //euiIconType: 'logoKafka', artifacts: { dashboards: [ { id: '943caca0-87ee-11e7-ad9c-db80de0bf8d3', - linkLabel: 'Kafka logs dashboard', + linkLabel: i18n.translate('kbn.server.tutorials.kafkaLogs.artifacts.dashboards.linkLabel', { + defaultMessage: 'Kafka logs dashboard', + }), isOverview: true } ], diff --git a/src/core_plugins/kibana/server/tutorials/kafka_metrics/index.js b/src/core_plugins/kibana/server/tutorials/kafka_metrics/index.js index c27aa8e58ccfeb..07e059f2eab4b8 100644 --- a/src/core_plugins/kibana/server/tutorials/kafka_metrics/index.js +++ b/src/core_plugins/kibana/server/tutorials/kafka_metrics/index.js @@ -17,6 +17,7 @@ * under the License. */ +import { i18n } from '@kbn/i18n'; import { TUTORIAL_CATEGORY } from '../../../common/tutorials/tutorial_category'; import { onPremInstructions, cloudInstructions, onPremCloudInstructions } from '../../../common/tutorials/metricbeat_instructions'; @@ -24,15 +25,27 @@ export function kafkaMetricsSpecProvider() { const moduleName = 'kafka'; return { id: 'kafkaMetrics', - name: 'Kafka metrics', + name: i18n.translate('kbn.server.tutorials.kafkaMetrics.nameTitle', { + defaultMessage: 'Kafka metrics', + }), isBeta: true, category: TUTORIAL_CATEGORY.METRICS, - shortDescription: 'Fetch internal metrics from the Kafka server.', - longDescription: 'The `kafka` Metricbeat module fetches internal metrics from Kafka.' + - ' [Learn more]({config.docs.beats.metricbeat}/metricbeat-module-kafka.html).', + shortDescription: i18n.translate('kbn.server.tutorials.kafkaMetrics.shortDescription', { + defaultMessage: 'Fetch internal metrics from the Kafka server.', + }), + longDescription: i18n.translate('kbn.server.tutorials.kafkaMetrics.longDescription', { + // eslint-disable-next-line no-multi-str + defaultMessage: 'The `kafka` Metricbeat module fetches internal metrics from Kafka. \ +[Learn more]({learnMoreLink}).', + values: { + learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-kafka.html', + }, + }), artifacts: { application: { - label: 'Discover', + label: i18n.translate('kbn.server.tutorials.kafkaMetrics.artifacts.application.label', { + defaultMessage: 'Discover', + }), path: '/app/kibana#/discover' }, dashboards: [], diff --git a/src/core_plugins/kibana/server/tutorials/kibana_metrics/index.js b/src/core_plugins/kibana/server/tutorials/kibana_metrics/index.js index a2f44d7d0cd5f0..8dd3adff2beb78 100644 --- a/src/core_plugins/kibana/server/tutorials/kibana_metrics/index.js +++ b/src/core_plugins/kibana/server/tutorials/kibana_metrics/index.js @@ -17,6 +17,7 @@ * under the License. */ +import { i18n } from '@kbn/i18n'; import { TUTORIAL_CATEGORY } from '../../../common/tutorials/tutorial_category'; import { onPremInstructions, cloudInstructions, onPremCloudInstructions } from '../../../common/tutorials/metricbeat_instructions'; @@ -24,16 +25,28 @@ export function kibanaMetricsSpecProvider() { const moduleName = 'kibana'; return { id: 'kibanaMetrics', - name: 'Kibana metrics', + name: i18n.translate('kbn.server.tutorials.kibanaMetrics.nameTitle', { + defaultMessage: 'Kibana metrics', + }), isBeta: true, category: TUTORIAL_CATEGORY.METRICS, - shortDescription: 'Fetch internal metrics from Kibana.', - longDescription: 'The `kibana` Metricbeat module fetches internal metrics from Kibana.' + - ' [Learn more]({config.docs.beats.metricbeat}/metricbeat-module-kibana.html).', + shortDescription: i18n.translate('kbn.server.tutorials.kibanaMetrics.shortDescription', { + defaultMessage: 'Fetch internal metrics from Kibana.', + }), + longDescription: i18n.translate('kbn.server.tutorials.kibanaMetrics.longDescription', { + // eslint-disable-next-line no-multi-str + defaultMessage: 'The `kibana` Metricbeat module fetches internal metrics from Kibana. \ +[Learn more]({learnMoreLink}).', + values: { + learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-kibana.html', + }, + }), euiIconType: 'logoKibana', artifacts: { application: { - label: 'Discover', + label: i18n.translate('kbn.server.tutorials.kibanaMetrics.artifacts.application.label', { + defaultMessage: 'Discover', + }), path: '/app/kibana#/discover' }, dashboards: [], diff --git a/src/core_plugins/kibana/server/tutorials/kubernetes_metrics/index.js b/src/core_plugins/kibana/server/tutorials/kubernetes_metrics/index.js index e4ab0d7fc24da2..0bbcc56943be59 100644 --- a/src/core_plugins/kibana/server/tutorials/kubernetes_metrics/index.js +++ b/src/core_plugins/kibana/server/tutorials/kubernetes_metrics/index.js @@ -17,6 +17,7 @@ * under the License. */ +import { i18n } from '@kbn/i18n'; import { TUTORIAL_CATEGORY } from '../../../common/tutorials/tutorial_category'; import { onPremInstructions, cloudInstructions, onPremCloudInstructions } from '../../../common/tutorials/metricbeat_instructions'; @@ -24,17 +25,29 @@ export function kubernetesMetricsSpecProvider() { const moduleName = 'kubernetes'; return { id: 'kubernetesMetrics', - name: 'Kubernetes metrics', + name: i18n.translate('kbn.server.tutorials.kubernetesMetrics.nameTitle', { + defaultMessage: 'Kubernetes metrics', + }), category: TUTORIAL_CATEGORY.METRICS, - shortDescription: 'Fetch metrics from your Kubernetes installation.', - longDescription: 'The `kubernetes` Metricbeat module fetches metrics from the Kubernetes APIs.' + - ' [Learn more]({config.docs.beats.metricbeat}/metricbeat-module-kubernetes.html).', + shortDescription: i18n.translate('kbn.server.tutorials.kubernetesMetrics.shortDescription', { + defaultMessage: 'Fetch metrics from your Kubernetes installation.', + }), + longDescription: i18n.translate('kbn.server.tutorials.kubernetesMetrics.longDescription', { + // eslint-disable-next-line no-multi-str + defaultMessage: 'The `kubernetes` Metricbeat module fetches metrics from the Kubernetes APIs. \ +[Learn more]({learnMoreLink}).', + values: { + learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-kubernetes.html', + }, + }), euiIconType: 'logoKubernetes', artifacts: { dashboards: [ { id: 'AV4RGUqo5NkDleZmzKuZ', - linkLabel: 'Kubernetes metrics dashboard', + linkLabel: i18n.translate('kbn.server.tutorials.kubernetesMetrics.artifacts.dashboards.linkLabel', { + defaultMessage: 'Kubernetes metrics dashboard', + }), isOverview: true } ], diff --git a/src/core_plugins/kibana/server/tutorials/logstash_logs/index.js b/src/core_plugins/kibana/server/tutorials/logstash_logs/index.js index 8d3458d575f8d5..222f48def2e19d 100644 --- a/src/core_plugins/kibana/server/tutorials/logstash_logs/index.js +++ b/src/core_plugins/kibana/server/tutorials/logstash_logs/index.js @@ -17,6 +17,7 @@ * under the License. */ +import { i18n } from '@kbn/i18n'; import { TUTORIAL_CATEGORY } from '../../../common/tutorials/tutorial_category'; import { onPremInstructions, cloudInstructions, onPremCloudInstructions } from '../../../common/tutorials/filebeat_instructions'; @@ -27,17 +28,29 @@ export function logstashLogsSpecProvider() { const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS']; return { id: 'logstashLogs', - name: 'Logstash logs', + name: i18n.translate('kbn.server.tutorials.logstashLogs.nameTitle', { + defaultMessage: 'Logstash logs', + }), category: TUTORIAL_CATEGORY.LOGGING, - shortDescription: 'Collect and parse debug and slow logs created by Logstash itself.', - longDescription: 'The `logstash` Filebeat module parses debug and slow logs created by Logstash itself.' + - ' [Learn more]({config.docs.beats.filebeat}/filebeat-module-logstash.html).', + shortDescription: i18n.translate('kbn.server.tutorials.logstashLogs.shortDescription', { + defaultMessage: 'Collect and parse debug and slow logs created by Logstash itself.', + }), + longDescription: i18n.translate('kbn.server.tutorials.logstashLogs.longDescription', { + // eslint-disable-next-line no-multi-str + defaultMessage: 'The `logstash` Filebeat module parses debug and slow logs created by Logstash itself. \ +[Learn more]({learnMoreLink}).', + values: { + learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-logstash.html', + }, + }), euiIconType: 'logoLogstash', artifacts: { dashboards: [ { id: 'Filebeat-Logstash-Log-Dashboard', - linkLabel: 'Logstash logs dashboard', + linkLabel: i18n.translate('kbn.server.tutorials.logstashLogs.artifacts.dashboards.linkLabel', { + defaultMessage: 'Logstash logs dashboard', + }), isOverview: true } ], diff --git a/src/core_plugins/kibana/server/tutorials/logstash_metrics/index.js b/src/core_plugins/kibana/server/tutorials/logstash_metrics/index.js index 90196d24ae9d05..b5da3edce5e4a8 100644 --- a/src/core_plugins/kibana/server/tutorials/logstash_metrics/index.js +++ b/src/core_plugins/kibana/server/tutorials/logstash_metrics/index.js @@ -17,6 +17,7 @@ * under the License. */ +import { i18n } from '@kbn/i18n'; import { TUTORIAL_CATEGORY } from '../../../common/tutorials/tutorial_category'; import { onPremInstructions, cloudInstructions, onPremCloudInstructions } from '../../../common/tutorials/metricbeat_instructions'; @@ -24,16 +25,29 @@ export function logstashMetricsSpecProvider() { const moduleName = 'logstash'; return { id: moduleName + 'Metrics', - name: 'Logstash metrics', + name: i18n.translate('kbn.server.tutorials.logstashMetrics.nameTitle', { + defaultMessage: 'Logstash metrics', + }), isBeta: true, category: TUTORIAL_CATEGORY.METRICS, - shortDescription: 'Fetch interal metrics from a Logstash server.', - longDescription: 'The `' + moduleName + '` Metricbeat module fetches internal metrics from a Logstash server.' + - ' [Learn more]({config.docs.beats.metricbeat}/metricbeat-module-' + moduleName + '.html).', + shortDescription: i18n.translate('kbn.server.tutorials.logstashMetrics.shortDescription', { + defaultMessage: 'Fetch interal metrics from a Logstash server.', + }), + longDescription: i18n.translate('kbn.server.tutorials.logstashMetrics.longDescription', { + // eslint-disable-next-line no-multi-str + defaultMessage: 'The `{moduleName}` Metricbeat module fetches internal metrics from a Logstash server. \ +[Learn more]({learnMoreLink}).', + values: { + moduleName, + learnMoreLink: `{config.docs.beats.metricbeat}/metricbeat-module-${moduleName}.html`, + }, + }), euiIconType: 'logoLogstash', artifacts: { application: { - label: 'Discover', + label: i18n.translate('kbn.server.tutorials.logstashMetrics.artifacts.application.label', { + defaultMessage: 'Discover', + }), path: '/app/kibana#/discover' }, dashboards: [], diff --git a/src/core_plugins/kibana/server/tutorials/memcached_metrics/index.js b/src/core_plugins/kibana/server/tutorials/memcached_metrics/index.js index 54937ca25891f6..b090e4511b60cf 100644 --- a/src/core_plugins/kibana/server/tutorials/memcached_metrics/index.js +++ b/src/core_plugins/kibana/server/tutorials/memcached_metrics/index.js @@ -17,6 +17,7 @@ * under the License. */ +import { i18n } from '@kbn/i18n'; import { TUTORIAL_CATEGORY } from '../../../common/tutorials/tutorial_category'; import { onPremInstructions, cloudInstructions, onPremCloudInstructions } from '../../../common/tutorials/metricbeat_instructions'; @@ -24,15 +25,27 @@ export function memcachedMetricsSpecProvider() { const moduleName = 'memcached'; return { id: 'memcachedMetrics', - name: 'Memcached metrics', + name: i18n.translate('kbn.server.tutorials.memcachedMetrics.nameTitle', { + defaultMessage: 'Memcached metrics', + }), isBeta: true, category: TUTORIAL_CATEGORY.METRICS, - shortDescription: 'Fetch internal metrics from the Memcached server.', - longDescription: 'The `memcached` Metricbeat module fetches internal metrics from Memcached.' + - ' [Learn more]({config.docs.beats.metricbeat}/metricbeat-module-memcached.html).', + shortDescription: i18n.translate('kbn.server.tutorials.memcachedMetrics.shortDescription', { + defaultMessage: 'Fetch internal metrics from the Memcached server.', + }), + longDescription: i18n.translate('kbn.server.tutorials.memcachedMetrics.longDescription', { + // eslint-disable-next-line no-multi-str + defaultMessage: 'The `memcached` Metricbeat module fetches internal metrics from Memcached. \ +[Learn more]({learnMoreLink}).', + values: { + learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-memcached.html', + }, + }), artifacts: { application: { - label: 'Discover', + label: i18n.translate('kbn.server.tutorials.memcachedMetrics.artifacts.application.label', { + defaultMessage: 'Discover', + }), path: '/app/kibana#/discover' }, dashboards: [],