diff --git a/CHANGELOG.md b/CHANGELOG.md
index 5a764c376d1a..9eba84b807a1 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -122,6 +122,7 @@ Inspired from [Keep a Changelog](https://keepachangelog.com/en/1.0.0/)
- [Console] Migrate `/lib/!autocomplete/` module to TypeScript ([#4150](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4150))
- [Dashboard] Restructure the `Dashboard` plugin folder to be more cohesive with the project ([#4575](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4575))
- Refactor logo usage to centralize and optimize assets and improve tests ([#4702](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/4702))
+- [Home] Remove unused tutorials ([#5212](https://github.com/opensearch-project/OpenSearch-Dashboards/pull/5212))
### 🔩 Tests
diff --git a/src/plugins/home/public/assets/tutorials/logos/activemq.svg b/src/plugins/home/public/assets/tutorials/logos/activemq.svg
deleted file mode 100644
index 20694ba6e62c..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/activemq.svg
+++ /dev/null
@@ -1,31 +0,0 @@
-
diff --git a/src/plugins/home/public/assets/tutorials/logos/barracuda.svg b/src/plugins/home/public/assets/tutorials/logos/barracuda.svg
deleted file mode 100644
index 555cdd6f8a32..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/barracuda.svg
+++ /dev/null
@@ -1,100 +0,0 @@
-
-
-
diff --git a/src/plugins/home/public/assets/tutorials/logos/checkpoint.svg b/src/plugins/home/public/assets/tutorials/logos/checkpoint.svg
deleted file mode 100644
index e71866e78c29..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/checkpoint.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/cisco.svg b/src/plugins/home/public/assets/tutorials/logos/cisco.svg
deleted file mode 100644
index 20ebebf19741..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/cisco.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/cockroachdb.svg b/src/plugins/home/public/assets/tutorials/logos/cockroachdb.svg
deleted file mode 100644
index 72f0958f5282..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/cockroachdb.svg
+++ /dev/null
@@ -1,666 +0,0 @@
-
-
-
-
diff --git a/src/plugins/home/public/assets/tutorials/logos/consul.svg b/src/plugins/home/public/assets/tutorials/logos/consul.svg
deleted file mode 100644
index 28bbadd24c8a..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/consul.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/coredns.svg b/src/plugins/home/public/assets/tutorials/logos/coredns.svg
deleted file mode 100644
index 863a81e0f40e..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/coredns.svg
+++ /dev/null
@@ -1 +0,0 @@
-
diff --git a/src/plugins/home/public/assets/tutorials/logos/couchdb.svg b/src/plugins/home/public/assets/tutorials/logos/couchdb.svg
deleted file mode 100644
index 2512c2eb2a01..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/couchdb.svg
+++ /dev/null
@@ -1,86 +0,0 @@
-
-
-
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/crowdstrike.svg b/src/plugins/home/public/assets/tutorials/logos/crowdstrike.svg
deleted file mode 100644
index 1b2195a2244f..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/crowdstrike.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/cylance.svg b/src/plugins/home/public/assets/tutorials/logos/cylance.svg
deleted file mode 100644
index ccd6004d19e7..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/cylance.svg
+++ /dev/null
@@ -1,82 +0,0 @@
-
-
-
diff --git a/src/plugins/home/public/assets/tutorials/logos/envoyproxy.svg b/src/plugins/home/public/assets/tutorials/logos/envoyproxy.svg
deleted file mode 100644
index 45c995b19603..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/envoyproxy.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/f5.svg b/src/plugins/home/public/assets/tutorials/logos/f5.svg
deleted file mode 100644
index d985bde96291..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/f5.svg
+++ /dev/null
@@ -1 +0,0 @@
-Asset 1
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/fortinet.svg b/src/plugins/home/public/assets/tutorials/logos/fortinet.svg
deleted file mode 100644
index d6a8448f320b..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/fortinet.svg
+++ /dev/null
@@ -1,9 +0,0 @@
-
-
-
-
-
-
-
-
-
diff --git a/src/plugins/home/public/assets/tutorials/logos/ibmmq.svg b/src/plugins/home/public/assets/tutorials/logos/ibmmq.svg
deleted file mode 100644
index e474d93359be..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/ibmmq.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/icinga.svg b/src/plugins/home/public/assets/tutorials/logos/icinga.svg
deleted file mode 100644
index 88161d61ca75..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/icinga.svg
+++ /dev/null
@@ -1,87 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/plugins/home/public/assets/tutorials/logos/iis.svg b/src/plugins/home/public/assets/tutorials/logos/iis.svg
deleted file mode 100644
index 99964448d33c..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/iis.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/infoblox.svg b/src/plugins/home/public/assets/tutorials/logos/infoblox.svg
deleted file mode 100644
index 57b4d23b1681..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/infoblox.svg
+++ /dev/null
@@ -1,93 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/plugins/home/public/assets/tutorials/logos/juniper.svg b/src/plugins/home/public/assets/tutorials/logos/juniper.svg
deleted file mode 100644
index 8802414a5aaf..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/juniper.svg
+++ /dev/null
@@ -1,72 +0,0 @@
-
-image/svg+xml
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/linux.svg b/src/plugins/home/public/assets/tutorials/logos/linux.svg
deleted file mode 100644
index c0a92e0c0f40..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/linux.svg
+++ /dev/null
@@ -1,1532 +0,0 @@
-
-
-
- Tux
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- image/svg+xml
-
- Tux
- 20 June 2012
-
-
- Garrett LeSage
-
-
-
-
-
- Larry Ewing, the creator of the original Tux graphic
-
-
-
-
- tux
- Linux
- penguin
- logo
-
-
-
-
- Larry Ewing, Garrett LeSage
-
-
- https://github.com/garrett/Tux
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/plugins/home/public/assets/tutorials/logos/microsoft.svg b/src/plugins/home/public/assets/tutorials/logos/microsoft.svg
deleted file mode 100644
index 5334aa7ca686..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/microsoft.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/misp.svg b/src/plugins/home/public/assets/tutorials/logos/misp.svg
deleted file mode 100644
index 1cc61eda0b60..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/misp.svg
+++ /dev/null
@@ -1,167 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- image/svg+xml
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- Threat Sharing
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/plugins/home/public/assets/tutorials/logos/mssql.svg b/src/plugins/home/public/assets/tutorials/logos/mssql.svg
deleted file mode 100644
index 738507c5809c..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/mssql.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/munin.svg b/src/plugins/home/public/assets/tutorials/logos/munin.svg
deleted file mode 100644
index b35a39498c9e..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/munin.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/nats.svg b/src/plugins/home/public/assets/tutorials/logos/nats.svg
deleted file mode 100644
index 5a1d6e9a52f1..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/nats.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/netscout.svg b/src/plugins/home/public/assets/tutorials/logos/netscout.svg
deleted file mode 100644
index cbd25cd92594..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/netscout.svg
+++ /dev/null
@@ -1,7 +0,0 @@
-
-
-
-
-
-
-
diff --git a/src/plugins/home/public/assets/tutorials/logos/o365.svg b/src/plugins/home/public/assets/tutorials/logos/o365.svg
deleted file mode 100644
index 3763f267ffc7..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/o365.svg
+++ /dev/null
@@ -1,16 +0,0 @@
-
-
- logo-integrations-Desktop HD Copy 2
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/okta.svg b/src/plugins/home/public/assets/tutorials/logos/okta.svg
deleted file mode 100644
index d806cb7dc645..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/okta.svg
+++ /dev/null
@@ -1,19 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/openmetrics.svg b/src/plugins/home/public/assets/tutorials/logos/openmetrics.svg
deleted file mode 100644
index feccb88a3f34..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/openmetrics.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/oracle.svg b/src/plugins/home/public/assets/tutorials/logos/oracle.svg
deleted file mode 100644
index 78db57f91481..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/oracle.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/osquery.svg b/src/plugins/home/public/assets/tutorials/logos/osquery.svg
deleted file mode 100755
index c2bf733d3593..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/osquery.svg
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/paloalto.svg b/src/plugins/home/public/assets/tutorials/logos/paloalto.svg
deleted file mode 100644
index 8c8e71ae0d9f..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/paloalto.svg
+++ /dev/null
@@ -1,29 +0,0 @@
-
-
- logo-integrations-Desktop HD
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/rabbitmq.svg b/src/plugins/home/public/assets/tutorials/logos/rabbitmq.svg
deleted file mode 100644
index dabd2a5744cb..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/rabbitmq.svg
+++ /dev/null
@@ -1,3 +0,0 @@
-
-
-
diff --git a/src/plugins/home/public/assets/tutorials/logos/radware.svg b/src/plugins/home/public/assets/tutorials/logos/radware.svg
deleted file mode 100644
index 6252efef7762..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/radware.svg
+++ /dev/null
@@ -1,66 +0,0 @@
-
-image/svg+xml
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/sonicwall.svg b/src/plugins/home/public/assets/tutorials/logos/sonicwall.svg
deleted file mode 100644
index fb1aded68a29..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/sonicwall.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/sophos.svg b/src/plugins/home/public/assets/tutorials/logos/sophos.svg
deleted file mode 100644
index 1f2cfc3a7f03..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/sophos.svg
+++ /dev/null
@@ -1,69 +0,0 @@
-
-
-
-image/svg+xml
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/stan.svg b/src/plugins/home/public/assets/tutorials/logos/stan.svg
deleted file mode 100644
index 5a1d6e9a52f1..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/stan.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/statsd.svg b/src/plugins/home/public/assets/tutorials/logos/statsd.svg
deleted file mode 100644
index f4458439fceb..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/statsd.svg
+++ /dev/null
@@ -1,41 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/src/plugins/home/public/assets/tutorials/logos/suricata.svg b/src/plugins/home/public/assets/tutorials/logos/suricata.svg
deleted file mode 100644
index 06e627a7e4ba..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/suricata.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/system.svg b/src/plugins/home/public/assets/tutorials/logos/system.svg
deleted file mode 100644
index 0aba96275e24..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/system.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/tomcat.svg b/src/plugins/home/public/assets/tutorials/logos/tomcat.svg
deleted file mode 100644
index 26ad7b6d33ad..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/tomcat.svg
+++ /dev/null
@@ -1,107 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/src/plugins/home/public/assets/tutorials/logos/traefik.svg b/src/plugins/home/public/assets/tutorials/logos/traefik.svg
deleted file mode 100644
index 8ee3448f5626..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/traefik.svg
+++ /dev/null
@@ -1,342 +0,0 @@
-
-
-
-image/svg+xml
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/ubiquiti.svg b/src/plugins/home/public/assets/tutorials/logos/ubiquiti.svg
deleted file mode 100644
index 99a911e32863..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/ubiquiti.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/uwsgi.svg b/src/plugins/home/public/assets/tutorials/logos/uwsgi.svg
deleted file mode 100644
index 43818ab211ee..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/uwsgi.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/vsphere.svg b/src/plugins/home/public/assets/tutorials/logos/vsphere.svg
deleted file mode 100644
index 999fabc613c4..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/vsphere.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/zeek.svg b/src/plugins/home/public/assets/tutorials/logos/zeek.svg
deleted file mode 100644
index 0e346f98c723..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/zeek.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/zookeeper.svg b/src/plugins/home/public/assets/tutorials/logos/zookeeper.svg
deleted file mode 100644
index 80db65f670d1..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/zookeeper.svg
+++ /dev/null
@@ -1 +0,0 @@
-
\ No newline at end of file
diff --git a/src/plugins/home/public/assets/tutorials/logos/zscaler.svg b/src/plugins/home/public/assets/tutorials/logos/zscaler.svg
deleted file mode 100644
index b8a21a2fa6ee..000000000000
--- a/src/plugins/home/public/assets/tutorials/logos/zscaler.svg
+++ /dev/null
@@ -1 +0,0 @@
-Zscaler-Logo-TM-Blue-RGB-May2019
\ No newline at end of file
diff --git a/src/plugins/home/server/services/tutorials/tutorials_registry.ts b/src/plugins/home/server/services/tutorials/tutorials_registry.ts
index 39c14060e30a..11bb460b9012 100644
--- a/src/plugins/home/server/services/tutorials/tutorials_registry.ts
+++ b/src/plugins/home/server/services/tutorials/tutorials_registry.ts
@@ -36,7 +36,6 @@ import {
ScopedTutorialContextFactory,
} from './lib/tutorials_registry_types';
import { tutorialSchema } from './lib/tutorial_schema';
-import { builtInTutorials } from '../../tutorials/register';
export class TutorialsRegistry {
private tutorialProviders: TutorialProvider[] = []; // pre-register all the tutorials we know we want in here
diff --git a/src/plugins/home/server/tutorials/activemq_logs/index.ts b/src/plugins/home/server/tutorials/activemq_logs/index.ts
deleted file mode 100644
index 151ea6d5180c..000000000000
--- a/src/plugins/home/server/tutorials/activemq_logs/index.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function activemqLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'activemq';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'activemqLogs',
- name: i18n.translate('home.tutorials.activemqLogs.nameTitle', {
- defaultMessage: 'ActiveMQ logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.activemqLogs.shortDescription', {
- defaultMessage: 'Collect ActiveMQ logs with Filebeat.',
- }),
- longDescription: i18n.translate('home.tutorials.activemqLogs.longDescription', {
- defaultMessage: 'Collect ActiveMQ logs with Filebeat. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-activemq.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/activemq.svg',
- artifacts: {
- dashboards: [
- {
- id: 'ffe86390-145f-11ea-8fd8-030a13064883',
- linkLabel: i18n.translate('home.tutorials.activemqLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'ActiveMQ Audit Events',
- }),
- isOverview: false,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-activemq.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/activemq_metrics/index.ts b/src/plugins/home/server/tutorials/activemq_metrics/index.ts
deleted file mode 100644
index bf0551b9594b..000000000000
--- a/src/plugins/home/server/tutorials/activemq_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialsCategory,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function activemqMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'activemq';
- return {
- id: 'activemqMetrics',
- name: i18n.translate('home.tutorials.activemqMetrics.nameTitle', {
- defaultMessage: 'ActiveMQ metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.activemqMetrics.shortDescription', {
- defaultMessage: 'Fetch monitoring metrics from ActiveMQ instances.',
- }),
- longDescription: i18n.translate('home.tutorials.activemqMetrics.longDescription', {
- defaultMessage:
- 'The `activemq` Metricbeat module fetches monitoring metrics from ActiveMQ instances \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-activemq.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/activemq.svg',
- isBeta: true,
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.activemqMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-activemq.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/aerospike_metrics/index.ts b/src/plugins/home/server/tutorials/aerospike_metrics/index.ts
deleted file mode 100644
index bad23346c7d6..000000000000
--- a/src/plugins/home/server/tutorials/aerospike_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialsCategory,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function aerospikeMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'aerospike';
- return {
- id: 'aerospikeMetrics',
- name: i18n.translate('home.tutorials.aerospikeMetrics.nameTitle', {
- defaultMessage: 'Aerospike metrics',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.aerospikeMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from the Aerospike server.',
- }),
- longDescription: i18n.translate('home.tutorials.aerospikeMetrics.longDescription', {
- defaultMessage:
- 'The `aerospike` Metricbeat module fetches internal metrics from Aerospike. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-aerospike.html',
- },
- }),
- euiIconType: 'logoAerospike',
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.aerospikeMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-aerospike.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/apache_logs/index.ts b/src/plugins/home/server/tutorials/apache_logs/index.ts
deleted file mode 100644
index b9e6f435ff61..000000000000
--- a/src/plugins/home/server/tutorials/apache_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function apacheLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'apache';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'apacheLogs',
- name: i18n.translate('home.tutorials.apacheLogs.nameTitle', {
- defaultMessage: 'Apache logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.apacheLogs.shortDescription', {
- defaultMessage: 'Collect and parse access and error logs created by the Apache HTTP server.',
- }),
- longDescription: i18n.translate('home.tutorials.apacheLogs.longDescription', {
- defaultMessage:
- 'The apache Filebeat module parses access and error logs created by the Apache HTTP server. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-apache.html',
- },
- }),
- euiIconType: 'logoApache',
- artifacts: {
- dashboards: [
- {
- id: 'Filebeat-Apache-Dashboard-ecs',
- linkLabel: i18n.translate('home.tutorials.apacheLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Apache logs dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-apache.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/apache_metrics/index.ts b/src/plugins/home/server/tutorials/apache_metrics/index.ts
deleted file mode 100644
index c384777debb9..000000000000
--- a/src/plugins/home/server/tutorials/apache_metrics/index.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function apacheMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'apache';
- return {
- id: 'apacheMetrics',
- name: i18n.translate('home.tutorials.apacheMetrics.nameTitle', {
- defaultMessage: 'Apache metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.apacheMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from the Apache 2 HTTP server.',
- }),
- longDescription: i18n.translate('home.tutorials.apacheMetrics.longDescription', {
- defaultMessage:
- 'The `apache` Metricbeat module fetches internal metrics from the Apache 2 HTTP server. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-apache.html',
- },
- }),
- euiIconType: 'logoApache',
- artifacts: {
- dashboards: [
- {
- id: 'Metricbeat-Apache-HTTPD-server-status-ecs',
- linkLabel: i18n.translate('home.tutorials.apacheMetrics.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Apache metrics dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-apache.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/auditbeat/index.ts b/src/plugins/home/server/tutorials/auditbeat/index.ts
deleted file mode 100644
index bc52bc14ece6..000000000000
--- a/src/plugins/home/server/tutorials/auditbeat/index.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/auditbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function auditbeatSpecProvider(context: TutorialContext): TutorialSchema {
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- const moduleName = 'auditbeat';
- return {
- id: 'auditbeat',
- name: i18n.translate('home.tutorials.auditbeat.nameTitle', {
- defaultMessage: 'Auditbeat',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.auditbeat.shortDescription', {
- defaultMessage: 'Collect audit data from your hosts.',
- }),
- longDescription: i18n.translate('home.tutorials.auditbeat.longDescription', {
- defaultMessage:
- 'Use Auditbeat to collect auditing data from your hosts. These include \
-processes, users, logins, sockets information, file accesses, and more. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.auditbeat}/auditbeat-overview.html',
- },
- }),
- euiIconType: 'securityAnalyticsApp',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.auditbeat.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.auditbeat}/exported-fields.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/auditd_logs/index.ts b/src/plugins/home/server/tutorials/auditd_logs/index.ts
deleted file mode 100644
index d262aee0106f..000000000000
--- a/src/plugins/home/server/tutorials/auditd_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function auditdLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'auditd';
- const platforms = ['DEB', 'RPM'] as const;
- return {
- id: 'auditdLogs',
- name: i18n.translate('home.tutorials.auditdLogs.nameTitle', {
- defaultMessage: 'Auditd logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.auditdLogs.shortDescription', {
- defaultMessage: 'Collect logs from the Linux auditd daemon.',
- }),
- longDescription: i18n.translate('home.tutorials.auditdLogs.longDescription', {
- defaultMessage:
- 'The module collects and parses logs from the audit daemon ( `auditd`). \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-auditd.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/linux.svg',
- artifacts: {
- dashboards: [
- {
- id: 'dfbb49f0-0a0f-11e7-8a62-2d05eaaac5cb-ecs',
- linkLabel: i18n.translate('home.tutorials.auditdLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Audit Events',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-auditd.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/aws_logs/index.ts b/src/plugins/home/server/tutorials/aws_logs/index.ts
deleted file mode 100644
index 2d987bf98290..000000000000
--- a/src/plugins/home/server/tutorials/aws_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function awsLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'aws';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'awsLogs',
- name: i18n.translate('home.tutorials.awsLogs.nameTitle', {
- defaultMessage: 'AWS S3 based logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.awsLogs.shortDescription', {
- defaultMessage: 'Collect AWS logs from S3 bucket with Filebeat.',
- }),
- longDescription: i18n.translate('home.tutorials.awsLogs.longDescription', {
- defaultMessage:
- 'Collect AWS logs by exporting them to an S3 bucket which is configured with SQS notification. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-aws.html',
- },
- }),
- euiIconType: 'logoAWS',
- artifacts: {
- dashboards: [
- {
- id: '4746e000-bacd-11e9-9f70-1f7bda85a5eb',
- linkLabel: i18n.translate('home.tutorials.awsLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'AWS S3 server access log dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-aws.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/aws_metrics/index.ts b/src/plugins/home/server/tutorials/aws_metrics/index.ts
deleted file mode 100644
index f239f224eb5a..000000000000
--- a/src/plugins/home/server/tutorials/aws_metrics/index.ts
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function awsMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'aws';
- return {
- id: 'awsMetrics',
- name: i18n.translate('home.tutorials.awsMetrics.nameTitle', {
- defaultMessage: 'AWS metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.awsMetrics.shortDescription', {
- defaultMessage:
- 'Fetch monitoring metrics for EC2 instances from the AWS APIs and Cloudwatch.',
- }),
- longDescription: i18n.translate('home.tutorials.awsMetrics.longDescription', {
- defaultMessage:
- 'The `aws` Metricbeat module fetches monitoring metrics from the AWS APIs and Cloudwatch. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-aws.html',
- },
- }),
- euiIconType: 'logoAWS',
- isBeta: false,
- artifacts: {
- dashboards: [
- {
- id: 'c5846400-f7fb-11e8-af03-c999c9dea608-ecs',
- linkLabel: i18n.translate('home.tutorials.awsMetrics.artifacts.dashboards.linkLabel', {
- defaultMessage: 'AWS metrics dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-aws.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/azure_logs/index.ts b/src/plugins/home/server/tutorials/azure_logs/index.ts
deleted file mode 100644
index 08d089aa6422..000000000000
--- a/src/plugins/home/server/tutorials/azure_logs/index.ts
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function azureLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'azure';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'azureLogs',
- name: i18n.translate('home.tutorials.azureLogs.nameTitle', {
- defaultMessage: 'Azure logs',
- }),
- moduleName,
- isBeta: true,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.azureLogs.shortDescription', {
- defaultMessage: 'Collects Azure activity and audit related logs.',
- }),
- longDescription: i18n.translate('home.tutorials.azureLogs.longDescription', {
- defaultMessage:
- 'The `azure` Filebeat module collects Azure activity and audit related logs. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-azure.html',
- },
- }),
- euiIconType: 'logoAzure',
- artifacts: {
- dashboards: [
- {
- id: '41e84340-ec20-11e9-90ec-112a988266d5',
- linkLabel: i18n.translate('home.tutorials.azureLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Azure logs dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-azure.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/azure_metrics/index.ts b/src/plugins/home/server/tutorials/azure_metrics/index.ts
deleted file mode 100644
index b93f697a331a..000000000000
--- a/src/plugins/home/server/tutorials/azure_metrics/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function azureMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'azure';
- return {
- id: 'azureMetrics',
- name: i18n.translate('home.tutorials.azureMetrics.nameTitle', {
- defaultMessage: 'Azure metrics',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.azureMetrics.shortDescription', {
- defaultMessage: 'Fetch Azure Monitor metrics.',
- }),
- longDescription: i18n.translate('home.tutorials.azureMetrics.longDescription', {
- defaultMessage:
- 'The `azure` Metricbeat module fetches Azure Monitor metrics. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-azure.html',
- },
- }),
- euiIconType: 'logoAzure',
- artifacts: {
- dashboards: [
- {
- id: 'eb3f05f0-ea9a-11e9-90ec-112a988266d5',
- linkLabel: i18n.translate('home.tutorials.azureMetrics.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Azure metrics dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-azure.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/barracuda_logs/index.ts b/src/plugins/home/server/tutorials/barracuda_logs/index.ts
deleted file mode 100644
index 5abdc41023ce..000000000000
--- a/src/plugins/home/server/tutorials/barracuda_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function barracudaLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'barracuda';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'barracudaLogs',
- name: i18n.translate('home.tutorials.barracudaLogs.nameTitle', {
- defaultMessage: 'Barracuda logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.barracudaLogs.shortDescription', {
- defaultMessage: 'Collect Barracuda Web Application Firewall logs over syslog or from a file.',
- }),
- longDescription: i18n.translate('home.tutorials.barracudaLogs.longDescription', {
- defaultMessage:
- 'This is a module for receiving Barracuda Web Application Firewall logs over Syslog or a file. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-barracuda.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/barracuda.svg',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.barracudaLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-barracuda.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/bluecoat_logs/index.ts b/src/plugins/home/server/tutorials/bluecoat_logs/index.ts
deleted file mode 100644
index 44e2bcc8a759..000000000000
--- a/src/plugins/home/server/tutorials/bluecoat_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function bluecoatLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'bluecoat';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'bluecoatLogs',
- name: i18n.translate('home.tutorials.bluecoatLogs.nameTitle', {
- defaultMessage: 'Bluecoat logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.bluecoatLogs.shortDescription', {
- defaultMessage: 'Collect Blue Coat Director logs over syslog or from a file.',
- }),
- longDescription: i18n.translate('home.tutorials.bluecoatLogs.longDescription', {
- defaultMessage:
- 'This is a module for receiving Blue Coat Director logs over Syslog or a file. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-bluecoat.html',
- },
- }),
- euiIconType: 'logoLogging',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.bluecoatLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-bluecoat.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/cef_logs/index.ts b/src/plugins/home/server/tutorials/cef_logs/index.ts
deleted file mode 100644
index 4972b3a5ccb2..000000000000
--- a/src/plugins/home/server/tutorials/cef_logs/index.ts
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function cefLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'cef';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'cefLogs',
- name: i18n.translate('home.tutorials.cefLogs.nameTitle', {
- defaultMessage: 'CEF logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.cefLogs.shortDescription', {
- defaultMessage: 'Collect Common Event Format (CEF) log data over syslog.',
- }),
- longDescription: i18n.translate('home.tutorials.cefLogs.longDescription', {
- defaultMessage:
- 'This is a module for receiving Common Event Format (CEF) data over \
- Syslog. When messages are received over the syslog protocol the syslog \
- input will parse the header and set the timestamp value. Then the \
- processor is applied to parse the CEF encoded data. The decoded data \
- is written into a `cef` object field. Lastly any OpenSearch Common Schema \
- (OCS) fields that can be populated with the CEF data are populated. \
- [Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-cef.html',
- },
- }),
- euiIconType: 'logoLogging',
- artifacts: {
- dashboards: [
- {
- id: 'dd0bc9af-2e89-4150-9b42-62517ea56b71',
- linkLabel: i18n.translate('home.tutorials.cefLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'CEF Network Overview Dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-cef.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/ceph_metrics/index.ts b/src/plugins/home/server/tutorials/ceph_metrics/index.ts
deleted file mode 100644
index c23e03196c2c..000000000000
--- a/src/plugins/home/server/tutorials/ceph_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function cephMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'ceph';
- return {
- id: 'cephMetrics',
- name: i18n.translate('home.tutorials.cephMetrics.nameTitle', {
- defaultMessage: 'Ceph metrics',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.cephMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from the Ceph server.',
- }),
- longDescription: i18n.translate('home.tutorials.cephMetrics.longDescription', {
- defaultMessage:
- 'The `ceph` Metricbeat module fetches internal metrics from Ceph. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-ceph.html',
- },
- }),
- euiIconType: 'logoCeph',
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.cephMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-ceph.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/checkpoint_logs/index.ts b/src/plugins/home/server/tutorials/checkpoint_logs/index.ts
deleted file mode 100644
index 72198e709502..000000000000
--- a/src/plugins/home/server/tutorials/checkpoint_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function checkpointLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'checkpoint';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'checkpointLogs',
- name: i18n.translate('home.tutorials.checkpointLogs.nameTitle', {
- defaultMessage: 'Check Point logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.checkpointLogs.shortDescription', {
- defaultMessage: 'Collect Check Point firewall logs.',
- }),
- longDescription: i18n.translate('home.tutorials.checkpointLogs.longDescription', {
- defaultMessage:
- 'This is a module for Check Point firewall logs. It supports logs from the Log Exporter in the Syslog format. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-checkpoint.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/checkpoint.svg',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.checkpointLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-checkpoint.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/cisco_logs/index.ts b/src/plugins/home/server/tutorials/cisco_logs/index.ts
deleted file mode 100644
index aa0796a1ffbc..000000000000
--- a/src/plugins/home/server/tutorials/cisco_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function ciscoLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'cisco';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'ciscoLogs',
- name: i18n.translate('home.tutorials.ciscoLogs.nameTitle', {
- defaultMessage: 'Cisco logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.ciscoLogs.shortDescription', {
- defaultMessage: 'Collect Cisco network device logs over syslog or from a file.',
- }),
- longDescription: i18n.translate('home.tutorials.ciscoLogs.longDescription', {
- defaultMessage:
- 'This is a module for Cisco network devices logs (ASA, FTD, IOS, Nexus). It includes the following filesets for receiving logs over syslog or read from a file: \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-cisco.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/cisco.svg',
- artifacts: {
- dashboards: [
- {
- id: 'a555b160-4987-11e9-b8ce-ed898b5ef295',
- linkLabel: i18n.translate('home.tutorials.ciscoLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'ASA Firewall Dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-cisco.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/cloudwatch_logs/index.ts b/src/plugins/home/server/tutorials/cloudwatch_logs/index.ts
deleted file mode 100644
index 744943fbb376..000000000000
--- a/src/plugins/home/server/tutorials/cloudwatch_logs/index.ts
+++ /dev/null
@@ -1,73 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/functionbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function cloudwatchLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'aws';
- return {
- id: 'cloudwatchLogs',
- name: i18n.translate('home.tutorials.cloudwatchLogs.nameTitle', {
- defaultMessage: 'AWS Cloudwatch logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.cloudwatchLogs.shortDescription', {
- defaultMessage: 'Collect Cloudwatch logs with Functionbeat.',
- }),
- longDescription: i18n.translate('home.tutorials.cloudwatchLogs.longDescription', {
- defaultMessage:
- 'Collect Cloudwatch logs by deploying Functionbeat to run as \
- an AWS Lambda function. \
- [Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink:
- '{config.docs.beats.functionbeat}/functionbeat-installation-configuration.html',
- },
- }),
- euiIconType: 'logoAWS',
- artifacts: {
- dashboards: [
- // TODO
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.functionbeat}/exported-fields.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions([], context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/cockroachdb_metrics/index.ts b/src/plugins/home/server/tutorials/cockroachdb_metrics/index.ts
deleted file mode 100644
index 882fbf83091c..000000000000
--- a/src/plugins/home/server/tutorials/cockroachdb_metrics/index.ts
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function cockroachdbMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'cockroachdb';
- return {
- id: 'cockroachdbMetrics',
- name: i18n.translate('home.tutorials.cockroachdbMetrics.nameTitle', {
- defaultMessage: 'CockroachDB metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.cockroachdbMetrics.shortDescription', {
- defaultMessage: 'Fetch monitoring metrics from the CockroachDB server.',
- }),
- longDescription: i18n.translate('home.tutorials.cockroachdbMetrics.longDescription', {
- defaultMessage:
- 'The `cockroachdb` Metricbeat module fetches monitoring metrics from CockroachDB. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-cockroachdb.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/cockroachdb.svg',
- artifacts: {
- dashboards: [
- {
- id: 'e3ba0c30-9766-11e9-9eea-6f554992ec1f',
- linkLabel: i18n.translate(
- 'home.tutorials.cockroachdbMetrics.artifacts.dashboards.linkLabel',
- {
- defaultMessage: 'CockroachDB metrics dashboard',
- }
- ),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-cockroachdb.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/consul_metrics/index.ts b/src/plugins/home/server/tutorials/consul_metrics/index.ts
deleted file mode 100644
index 5b7b57fea5b1..000000000000
--- a/src/plugins/home/server/tutorials/consul_metrics/index.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function consulMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'consul';
- return {
- id: 'consulMetrics',
- name: i18n.translate('home.tutorials.consulMetrics.nameTitle', {
- defaultMessage: 'Consul metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.consulMetrics.shortDescription', {
- defaultMessage: 'Fetch monitoring metrics from the Consul server.',
- }),
- longDescription: i18n.translate('home.tutorials.consulMetrics.longDescription', {
- defaultMessage:
- 'The `consul` Metricbeat module fetches monitoring metrics from Consul. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-consul.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/consul.svg',
- artifacts: {
- dashboards: [
- {
- id: '496910f0-b952-11e9-a579-f5c0a5d81340',
- linkLabel: i18n.translate('home.tutorials.consulMetrics.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Consul metrics dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-consul.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/coredns_logs/index.ts b/src/plugins/home/server/tutorials/coredns_logs/index.ts
deleted file mode 100644
index 63ec23201d88..000000000000
--- a/src/plugins/home/server/tutorials/coredns_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function corednsLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'coredns';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'corednsLogs',
- name: i18n.translate('home.tutorials.corednsLogs.nameTitle', {
- defaultMessage: 'CoreDNS logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.corednsLogs.shortDescription', {
- defaultMessage: 'Collect CoreDNS logs.',
- }),
- longDescription: i18n.translate('home.tutorials.corednsLogs.longDescription', {
- defaultMessage:
- 'This is a filebeat module for CoreDNS. It supports both standalone CoreDNS deployment and CoreDNS deployment in Kubernetes. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-coredns.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/coredns.svg',
- artifacts: {
- dashboards: [
- {
- id: '53aa1f70-443e-11e9-8548-ab7fbe04f038',
- linkLabel: i18n.translate('home.tutorials.corednsLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: '[Filebeat CoreDNS] Overview',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-coredns.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/coredns_metrics/index.ts b/src/plugins/home/server/tutorials/coredns_metrics/index.ts
deleted file mode 100644
index 4fc64a172bc0..000000000000
--- a/src/plugins/home/server/tutorials/coredns_metrics/index.ts
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function corednsMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'coredns';
- return {
- id: 'corednsMetrics',
- name: i18n.translate('home.tutorials.corednsMetrics.nameTitle', {
- defaultMessage: 'CoreDNS metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.corednsMetrics.shortDescription', {
- defaultMessage: 'Fetch monitoring metrics from the CoreDNS server.',
- }),
- longDescription: i18n.translate('home.tutorials.corednsMetrics.longDescription', {
- defaultMessage:
- 'The `coredns` Metricbeat module fetches monitoring metrics from CoreDNS. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-coredns.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/coredns.svg',
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.corednsMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-coredns.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/couchbase_metrics/index.ts b/src/plugins/home/server/tutorials/couchbase_metrics/index.ts
deleted file mode 100644
index cdbd82e0d498..000000000000
--- a/src/plugins/home/server/tutorials/couchbase_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function couchbaseMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'couchbase';
- return {
- id: 'couchbaseMetrics',
- name: i18n.translate('home.tutorials.couchbaseMetrics.nameTitle', {
- defaultMessage: 'Couchbase metrics',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.couchbaseMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from Couchbase.',
- }),
- longDescription: i18n.translate('home.tutorials.couchbaseMetrics.longDescription', {
- defaultMessage:
- 'The `couchbase` Metricbeat module fetches internal metrics from Couchbase. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-couchbase.html',
- },
- }),
- euiIconType: 'logoCouchbase',
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.couchbaseMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-couchbase.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/couchdb_metrics/index.ts b/src/plugins/home/server/tutorials/couchdb_metrics/index.ts
deleted file mode 100644
index cb5aca214228..000000000000
--- a/src/plugins/home/server/tutorials/couchdb_metrics/index.ts
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function couchdbMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'couchdb';
- return {
- id: 'couchdbMetrics',
- name: i18n.translate('home.tutorials.couchdbMetrics.nameTitle', {
- defaultMessage: 'CouchDB metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.couchdbMetrics.shortDescription', {
- defaultMessage: 'Fetch monitoring metrics from the CouchdB server.',
- }),
- longDescription: i18n.translate('home.tutorials.couchdbMetrics.longDescription', {
- defaultMessage:
- 'The `couchdb` Metricbeat module fetches monitoring metrics from CouchDB. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-couchdb.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/couchdb.svg',
- artifacts: {
- dashboards: [
- {
- id: '496910f0-b952-11e9-a579-f5c0a5d81340',
- linkLabel: i18n.translate(
- 'home.tutorials.couchdbMetrics.artifacts.dashboards.linkLabel',
- {
- defaultMessage: 'CouchDB metrics dashboard',
- }
- ),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-couchdb.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/crowdstrike_logs/index.ts b/src/plugins/home/server/tutorials/crowdstrike_logs/index.ts
deleted file mode 100644
index 949c2e1283dd..000000000000
--- a/src/plugins/home/server/tutorials/crowdstrike_logs/index.ts
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function crowdstrikeLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'crowdstrike';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'crowdstrikeLogs',
- name: i18n.translate('home.tutorials.crowdstrikeLogs.nameTitle', {
- defaultMessage: 'CrowdStrike logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.crowdstrikeLogs.shortDescription', {
- defaultMessage: 'Collect CrowdStrike Falcon logs using the Falcon SIEM Connector.',
- }),
- longDescription: i18n.translate('home.tutorials.crowdstrikeLogs.longDescription', {
- defaultMessage:
- 'This is the Filebeat module for CrowdStrike Falcon using the Falcon \
- [SIEM Connector](https://www.crowdstrike.com/blog/tech-center/integrate-with-your-siem). \
- This module collects this data, converts it to OCS, and ingests it to view in the SIEM. \
- By default, the Falcon SIEM connector outputs JSON formatted Falcon Streaming API event data. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-crowdstrike.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/crowdstrike.svg',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.crowdstrikeLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-crowdstrike.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/cylance_logs/index.ts b/src/plugins/home/server/tutorials/cylance_logs/index.ts
deleted file mode 100644
index 20f271253918..000000000000
--- a/src/plugins/home/server/tutorials/cylance_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function cylanceLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'cylance';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'cylanceLogs',
- name: i18n.translate('home.tutorials.cylanceLogs.nameTitle', {
- defaultMessage: 'CylancePROTECT logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.cylanceLogs.shortDescription', {
- defaultMessage: 'Collect CylancePROTECT logs over syslog or from a file.',
- }),
- longDescription: i18n.translate('home.tutorials.cylanceLogs.longDescription', {
- defaultMessage:
- 'This is a module for receiving CylancePROTECT logs over Syslog or a file. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-cylance.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/cylance.svg',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.cylanceLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-cylance.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/docker_metrics/index.ts b/src/plugins/home/server/tutorials/docker_metrics/index.ts
deleted file mode 100644
index 9a396b81e34f..000000000000
--- a/src/plugins/home/server/tutorials/docker_metrics/index.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function dockerMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'docker';
- return {
- id: 'dockerMetrics',
- name: i18n.translate('home.tutorials.dockerMetrics.nameTitle', {
- defaultMessage: 'Docker metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.dockerMetrics.shortDescription', {
- defaultMessage: 'Fetch metrics about your Docker containers.',
- }),
- longDescription: i18n.translate('home.tutorials.dockerMetrics.longDescription', {
- defaultMessage:
- 'The `docker` Metricbeat module fetches metrics from the Docker server. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-docker.html',
- },
- }),
- euiIconType: 'logoDocker',
- artifacts: {
- dashboards: [
- {
- id: 'AV4REOpp5NkDleZmzKkE-ecs',
- linkLabel: i18n.translate('home.tutorials.dockerMetrics.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Docker metrics dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-docker.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/dropwizard_metrics/index.ts b/src/plugins/home/server/tutorials/dropwizard_metrics/index.ts
deleted file mode 100644
index e279176e8ff9..000000000000
--- a/src/plugins/home/server/tutorials/dropwizard_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function dropwizardMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'dropwizard';
- return {
- id: 'dropwizardMetrics',
- name: i18n.translate('home.tutorials.dropwizardMetrics.nameTitle', {
- defaultMessage: 'Dropwizard metrics',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.dropwizardMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from Dropwizard Java application.',
- }),
- longDescription: i18n.translate('home.tutorials.dropwizardMetrics.longDescription', {
- defaultMessage:
- 'The `dropwizard` Metricbeat module fetches internal metrics from Dropwizard Java Application. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-dropwizard.html',
- },
- }),
- euiIconType: 'logoDropwizard',
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.dropwizardMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-dropwizard.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/envoyproxy_logs/index.ts b/src/plugins/home/server/tutorials/envoyproxy_logs/index.ts
deleted file mode 100644
index d18cb1425116..000000000000
--- a/src/plugins/home/server/tutorials/envoyproxy_logs/index.ts
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function envoyproxyLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'envoyproxy';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'envoyproxyLogs',
- name: i18n.translate('home.tutorials.envoyproxyLogs.nameTitle', {
- defaultMessage: 'Envoy Proxy logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.envoyproxyLogs.shortDescription', {
- defaultMessage: 'Collect Envoy Proxy logs.',
- }),
- longDescription: i18n.translate('home.tutorials.envoyproxyLogs.longDescription', {
- defaultMessage:
- 'This is a Filebeat module for Envoy proxy access log ( https://www.envoyproxy.io/docs/envoy/v1.10.0/configuration/access_log). It supports both standalone deployment and Envoy proxy deployment in Kubernetes. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-envoyproxy.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/envoyproxy.svg',
- artifacts: {
- dashboards: [
- {
- id: '0c610510-5cbd-11e9-8477-077ec9664dbd',
- linkLabel: i18n.translate(
- 'home.tutorials.envoyproxyLogs.artifacts.dashboards.linkLabel',
- {
- defaultMessage: 'Envoy Proxy Overview',
- }
- ),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-envoyproxy.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/envoyproxy_metrics/index.ts b/src/plugins/home/server/tutorials/envoyproxy_metrics/index.ts
deleted file mode 100644
index 2ab1b7533ecc..000000000000
--- a/src/plugins/home/server/tutorials/envoyproxy_metrics/index.ts
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function envoyproxyMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'envoyproxy';
- return {
- id: 'envoyproxyMetrics',
- name: i18n.translate('home.tutorials.envoyproxyMetrics.nameTitle', {
- defaultMessage: 'Envoy Proxy metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.envoyproxyMetrics.shortDescription', {
- defaultMessage: 'Fetch monitoring metrics from Envoy Proxy.',
- }),
- longDescription: i18n.translate('home.tutorials.envoyproxyMetrics.longDescription', {
- defaultMessage:
- 'The `envoyproxy` Metricbeat module fetches monitoring metrics from Envoy Proxy. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-envoyproxy.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/envoyproxy.svg',
- artifacts: {
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-envoyproxy.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/etcd_metrics/index.ts b/src/plugins/home/server/tutorials/etcd_metrics/index.ts
deleted file mode 100644
index 31bcb5369323..000000000000
--- a/src/plugins/home/server/tutorials/etcd_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function etcdMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'etcd';
- return {
- id: 'etcdMetrics',
- name: i18n.translate('home.tutorials.etcdMetrics.nameTitle', {
- defaultMessage: 'Etcd metrics',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.etcdMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from the Etcd server.',
- }),
- longDescription: i18n.translate('home.tutorials.etcdMetrics.longDescription', {
- defaultMessage:
- 'The `etcd` Metricbeat module fetches internal metrics from Etcd. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-etcd.html',
- },
- }),
- euiIconType: 'logoEtcd',
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.etcdMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-etcd.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/f5_logs/index.ts b/src/plugins/home/server/tutorials/f5_logs/index.ts
deleted file mode 100644
index b8391545eb64..000000000000
--- a/src/plugins/home/server/tutorials/f5_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function f5LogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'f5';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'f5Logs',
- name: i18n.translate('home.tutorials.f5Logs.nameTitle', {
- defaultMessage: 'F5 logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.f5Logs.shortDescription', {
- defaultMessage: 'Collect F5 Big-IP Access Policy Manager logs over syslog or from a file.',
- }),
- longDescription: i18n.translate('home.tutorials.f5Logs.longDescription', {
- defaultMessage:
- 'This is a module for receiving Big-IP Access Policy Manager logs over Syslog or a file. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-f5.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/f5.svg',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.f5Logs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-f5.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/fortinet_logs/index.ts b/src/plugins/home/server/tutorials/fortinet_logs/index.ts
deleted file mode 100644
index 6622f07fa777..000000000000
--- a/src/plugins/home/server/tutorials/fortinet_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function fortinetLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'fortinet';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'fortinetLogs',
- name: i18n.translate('home.tutorials.fortinetLogs.nameTitle', {
- defaultMessage: 'Fortinet logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.fortinetLogs.shortDescription', {
- defaultMessage: 'Collect Fortinet FortiOS logs over syslog.',
- }),
- longDescription: i18n.translate('home.tutorials.fortinetLogs.longDescription', {
- defaultMessage:
- 'This is a module for Fortinet FortiOS logs sent in the syslog format. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-fortinet.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/fortinet.svg',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.fortinetLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-fortinet.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/golang_metrics/index.ts b/src/plugins/home/server/tutorials/golang_metrics/index.ts
deleted file mode 100644
index 1f20d2f48bba..000000000000
--- a/src/plugins/home/server/tutorials/golang_metrics/index.ts
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function golangMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'golang';
- return {
- id: moduleName + 'Metrics',
- name: i18n.translate('home.tutorials.golangMetrics.nameTitle', {
- defaultMessage: 'Golang metrics',
- }),
- moduleName,
- isBeta: true,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.golangMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from a Golang app.',
- }),
- longDescription: i18n.translate('home.tutorials.golangMetrics.longDescription', {
- defaultMessage:
- 'The `{moduleName}` Metricbeat module fetches internal metrics from a Golang app. \
-[Learn more]({learnMoreLink}).',
- values: {
- moduleName,
- learnMoreLink: `{config.docs.beats.metricbeat}/metricbeat-module-${moduleName}.html`,
- },
- }),
- euiIconType: 'logoGolang',
- artifacts: {
- dashboards: [
- {
- id: 'f2dc7320-f519-11e6-a3c9-9d1f7c42b045-ecs',
- linkLabel: i18n.translate('home.tutorials.golangMetrics.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Golang metrics dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-' + moduleName + '.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/googlecloud_logs/index.ts b/src/plugins/home/server/tutorials/googlecloud_logs/index.ts
deleted file mode 100644
index 6118c215ea94..000000000000
--- a/src/plugins/home/server/tutorials/googlecloud_logs/index.ts
+++ /dev/null
@@ -1,83 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function googlecloudLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'googlecloud';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'googlecloudLogs',
- name: i18n.translate('home.tutorials.googlecloudLogs.nameTitle', {
- defaultMessage: 'Google Cloud logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.googlecloudLogs.shortDescription', {
- defaultMessage: 'Collect Google Cloud audit, firewall, and VPC flow logs.',
- }),
- longDescription: i18n.translate('home.tutorials.googlecloudLogs.longDescription', {
- defaultMessage:
- 'This is a module for Google Cloud logs. It supports reading audit, VPC flow, \
- and firewall logs that have been exported from Stackdriver to a Google Pub/Sub \
- topic sink. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-googlecloud.html',
- },
- }),
- euiIconType: 'logoGoogleG',
- artifacts: {
- dashboards: [
- {
- id: '6576c480-73a2-11ea-a345-f985c61fe654',
- linkLabel: i18n.translate(
- 'home.tutorials.googlecloudLogs.artifacts.dashboards.linkLabel',
- {
- defaultMessage: 'Audit Logs Dashbaord',
- }
- ),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-googlecloud.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/googlecloud_metrics/index.ts b/src/plugins/home/server/tutorials/googlecloud_metrics/index.ts
deleted file mode 100644
index b19fdb456f9b..000000000000
--- a/src/plugins/home/server/tutorials/googlecloud_metrics/index.ts
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function googlecloudMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'googlecloud';
- return {
- id: 'googlecloudMetrics',
- name: i18n.translate('home.tutorials.googlecloudMetrics.nameTitle', {
- defaultMessage: 'Google Cloud metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.googlecloudMetrics.shortDescription', {
- defaultMessage:
- 'Fetch monitoring metrics from Google Cloud Platform using Stackdriver Monitoring API.',
- }),
- longDescription: i18n.translate('home.tutorials.googlecloudMetrics.longDescription', {
- defaultMessage:
- 'The `googlecloud` Metricbeat module fetches monitoring metrics from Google Cloud Platform using Stackdriver Monitoring API. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-googlecloud.html',
- },
- }),
- euiIconType: 'logoGCP',
- isBeta: false,
- artifacts: {
- dashboards: [
- {
- id: 'f40ee870-5e4a-11ea-a4f6-717338406083',
- linkLabel: i18n.translate(
- 'home.tutorials.googlecloudMetrics.artifacts.dashboards.linkLabel',
- {
- defaultMessage: 'Google Cloud metrics dashboard',
- }
- ),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-googlecloud.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/gsuite_logs/index.ts b/src/plugins/home/server/tutorials/gsuite_logs/index.ts
deleted file mode 100644
index b2dc118cc60a..000000000000
--- a/src/plugins/home/server/tutorials/gsuite_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function gsuiteLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'gsuite';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'gsuiteLogs',
- name: i18n.translate('home.tutorials.gsuiteLogs.nameTitle', {
- defaultMessage: 'GSuite logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.gsuiteLogs.shortDescription', {
- defaultMessage: 'Collect GSuite activity reports.',
- }),
- longDescription: i18n.translate('home.tutorials.gsuiteLogs.longDescription', {
- defaultMessage:
- 'This is a module for ingesting data from the different GSuite audit reports APIs. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-gsuite.html',
- },
- }),
- euiIconType: 'logoGoogleG',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.gsuiteLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-gsuite.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/haproxy_logs/index.ts b/src/plugins/home/server/tutorials/haproxy_logs/index.ts
deleted file mode 100644
index 0eb3b84291ff..000000000000
--- a/src/plugins/home/server/tutorials/haproxy_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function haproxyLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'haproxy';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'haproxyLogs',
- name: i18n.translate('home.tutorials.haproxyLogs.nameTitle', {
- defaultMessage: 'HAProxy logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.haproxyLogs.shortDescription', {
- defaultMessage: 'Collect HAProxy logs.',
- }),
- longDescription: i18n.translate('home.tutorials.haproxyLogs.longDescription', {
- defaultMessage:
- 'The module collects and parses logs from a ( `haproxy`) process. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-haproxy.html',
- },
- }),
- euiIconType: 'logoHAproxy',
- artifacts: {
- dashboards: [
- {
- id: '3560d580-aa34-11e8-9c06-877f0445e3e0-ecs',
- linkLabel: i18n.translate('home.tutorials.haproxyLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'HAProxy Overview',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-haproxy.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/haproxy_metrics/index.ts b/src/plugins/home/server/tutorials/haproxy_metrics/index.ts
deleted file mode 100644
index be275726877a..000000000000
--- a/src/plugins/home/server/tutorials/haproxy_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function haproxyMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'haproxy';
- return {
- id: 'haproxyMetrics',
- name: i18n.translate('home.tutorials.haproxyMetrics.nameTitle', {
- defaultMessage: 'HAProxy metrics',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.haproxyMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from the HAProxy server.',
- }),
- longDescription: i18n.translate('home.tutorials.haproxyMetrics.longDescription', {
- defaultMessage:
- 'The `haproxy` Metricbeat module fetches internal metrics from HAProxy. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-haproxy.html',
- },
- }),
- euiIconType: 'logoHAproxy',
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.haproxyMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-haproxy.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/ibmmq_logs/index.ts b/src/plugins/home/server/tutorials/ibmmq_logs/index.ts
deleted file mode 100644
index 388a5dd3463c..000000000000
--- a/src/plugins/home/server/tutorials/ibmmq_logs/index.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function ibmmqLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'ibmmq';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'ibmmqLogs',
- name: i18n.translate('home.tutorials.ibmmqLogs.nameTitle', {
- defaultMessage: 'IBM MQ logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.ibmmqLogs.shortDescription', {
- defaultMessage: 'Collect IBM MQ logs with Filebeat.',
- }),
- longDescription: i18n.translate('home.tutorials.ibmmqLogs.longDescription', {
- defaultMessage: 'Collect IBM MQ logs with Filebeat. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-ibmmq.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/ibmmq.svg',
- artifacts: {
- dashboards: [
- {
- id: 'ba1d8830-7c7b-11e9-9645-e37efaf5baff',
- linkLabel: i18n.translate('home.tutorials.ibmmqLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'IBM MQ Events',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-ibmmq.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/ibmmq_metrics/index.ts b/src/plugins/home/server/tutorials/ibmmq_metrics/index.ts
deleted file mode 100644
index b3c7643c68f0..000000000000
--- a/src/plugins/home/server/tutorials/ibmmq_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function ibmmqMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'ibmmq';
- return {
- id: 'ibmmqMetrics',
- name: i18n.translate('home.tutorials.ibmmqMetrics.nameTitle', {
- defaultMessage: 'IBM MQ metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.ibmmqMetrics.shortDescription', {
- defaultMessage: 'Fetch monitoring metrics from IBM MQ instances.',
- }),
- longDescription: i18n.translate('home.tutorials.ibmmqMetrics.longDescription', {
- defaultMessage:
- 'The `ibmmq` Metricbeat module fetches monitoring metrics from IBM MQ instances \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-ibmmq.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/ibmmq.svg',
- isBeta: true,
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.ibmmqMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-ibmmq.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/icinga_logs/index.ts b/src/plugins/home/server/tutorials/icinga_logs/index.ts
deleted file mode 100644
index c33ea03e4c01..000000000000
--- a/src/plugins/home/server/tutorials/icinga_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function icingaLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'icinga';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'icingaLogs',
- name: i18n.translate('home.tutorials.icingaLogs.nameTitle', {
- defaultMessage: 'Icinga logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.icingaLogs.shortDescription', {
- defaultMessage: 'Collect Icinga main, debug, and startup logs.',
- }),
- longDescription: i18n.translate('home.tutorials.icingaLogs.longDescription', {
- defaultMessage:
- 'The module parses the main, debug, and startup logs of [Icinga](https://www.icinga.com/products/icinga-2/). \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-icinga.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/icinga.svg',
- artifacts: {
- dashboards: [
- {
- id: 'f693d260-2417-11e7-a83b-d5f4cebac9ff-ecs',
- linkLabel: i18n.translate('home.tutorials.icingaLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Icinga Main Log',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-icinga.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/iis_logs/index.ts b/src/plugins/home/server/tutorials/iis_logs/index.ts
deleted file mode 100644
index 169fc85653e8..000000000000
--- a/src/plugins/home/server/tutorials/iis_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function iisLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'iis';
- const platforms = ['WINDOWS'] as const;
- return {
- id: 'iisLogs',
- name: i18n.translate('home.tutorials.iisLogs.nameTitle', {
- defaultMessage: 'IIS logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.iisLogs.shortDescription', {
- defaultMessage: 'Collect and parse access and error logs created by the IIS HTTP server.',
- }),
- longDescription: i18n.translate('home.tutorials.iisLogs.longDescription', {
- defaultMessage:
- 'The `iis` Filebeat module parses access and error logs created by the IIS HTTP server. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-iis.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/iis.svg',
- artifacts: {
- dashboards: [
- {
- id: '4278ad30-fe16-11e7-a3b0-d13028918f9f-ecs',
- linkLabel: i18n.translate('home.tutorials.iisLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'IIS logs dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-iis.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/iis_metrics/index.ts b/src/plugins/home/server/tutorials/iis_metrics/index.ts
deleted file mode 100644
index d47933fa32a9..000000000000
--- a/src/plugins/home/server/tutorials/iis_metrics/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function iisMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'iis';
- return {
- id: 'iisMetrics',
- name: i18n.translate('home.tutorials.iisMetrics.nameTitle', {
- defaultMessage: 'IIS Metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.iisMetrics.shortDescription', {
- defaultMessage: 'Collect IIS server related metrics.',
- }),
- longDescription: i18n.translate('home.tutorials.iisMetrics.longDescription', {
- defaultMessage:
- 'The `iis` Metricbeat module collects metrics from IIS server and the application pools and websites running. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-iis.html',
- },
- }),
- isBeta: true,
- euiIconType: '/plugins/home/assets/tutorials/logos/iis.svg',
- artifacts: {
- dashboards: [
- {
- id: 'ebc23240-8572-11ea-91bc-ab084c7ec0e7',
- linkLabel: i18n.translate('home.tutorials.iisMetrics.artifacts.dashboards.linkLabel', {
- defaultMessage: 'IIS metrics dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-iis.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/imperva_logs/index.ts b/src/plugins/home/server/tutorials/imperva_logs/index.ts
deleted file mode 100644
index 32249c202d0d..000000000000
--- a/src/plugins/home/server/tutorials/imperva_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function impervaLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'imperva';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'impervaLogs',
- name: i18n.translate('home.tutorials.impervaLogs.nameTitle', {
- defaultMessage: 'Imperva logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.impervaLogs.shortDescription', {
- defaultMessage: 'Collect Imperva SecureSphere logs over syslog or from a file.',
- }),
- longDescription: i18n.translate('home.tutorials.impervaLogs.longDescription', {
- defaultMessage:
- 'This is a module for receiving Imperva SecureSphere logs over Syslog or a file. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-imperva.html',
- },
- }),
- euiIconType: 'logoLogging',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.impervaLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-imperva.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/infoblox_logs/index.ts b/src/plugins/home/server/tutorials/infoblox_logs/index.ts
deleted file mode 100644
index 63980113d8e8..000000000000
--- a/src/plugins/home/server/tutorials/infoblox_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function infobloxLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'infoblox';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'infobloxLogs',
- name: i18n.translate('home.tutorials.infobloxLogs.nameTitle', {
- defaultMessage: 'Infoblox logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.infobloxLogs.shortDescription', {
- defaultMessage: 'Collect Infoblox NIOS logs over syslog or from a file.',
- }),
- longDescription: i18n.translate('home.tutorials.infobloxLogs.longDescription', {
- defaultMessage:
- 'This is a module for receiving Infoblox NIOS logs over Syslog or a file. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-infoblox.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/infoblox.svg',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.infobloxLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-infoblox.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/instructions/auditbeat_instructions.ts b/src/plugins/home/server/tutorials/instructions/auditbeat_instructions.ts
deleted file mode 100644
index 875c108e9a72..000000000000
--- a/src/plugins/home/server/tutorials/instructions/auditbeat_instructions.ts
+++ /dev/null
@@ -1,363 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { INSTRUCTION_VARIANT } from '../../../common/instruction_variant';
-import { getSpaceIdForBeatsTutorial } from './get_space_id_for_beats_tutorial';
-import { Platform, TutorialContext } from '../../services/tutorials/lib/tutorials_registry_types';
-
-export const createAuditbeatInstructions = (context?: TutorialContext) => ({
- INSTALL: {
- OSX: {
- title: i18n.translate('home.tutorials.common.auditbeatInstructions.install.osxTitle', {
- defaultMessage: 'Download and install Auditbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.auditbeatInstructions.install.osxTextPre', {
- defaultMessage: 'First time using Auditbeat? See the [Quick Start]({linkUrl}).',
- values: {
- linkUrl: '{config.docs.beats.auditbeat}/auditbeat-installation-configuration.html',
- },
- }),
- commands: [
- 'curl -L -O https://artifacts.opensearch.org/downloads/beats/auditbeat/auditbeat-{config.opensearchDashboards.version}-darwin-x64.tar.gz',
- 'tar xzvf auditbeat-{config.opensearchDashboards.version}-darwin-x64.tar.gz',
- 'cd auditbeat-{config.opensearchDashboards.version}-darwin-x64/',
- ],
- },
- DEB: {
- title: i18n.translate('home.tutorials.common.auditbeatInstructions.install.debTitle', {
- defaultMessage: 'Download and install Auditbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.auditbeatInstructions.install.debTextPre', {
- defaultMessage: 'First time using Auditbeat? See the [Quick Start]({linkUrl}).',
- values: {
- linkUrl: '{config.docs.beats.auditbeat}/auditbeat-installation-configuration.html',
- },
- }),
- commands: [
- 'curl -L -O https://artifacts.opensearch.org/downloads/beats/auditbeat/auditbeat-{config.opensearchDashboards.version}-amd64.deb',
- 'sudo dpkg -i auditbeat-{config.opensearchDashboards.version}-amd64.deb',
- ],
- textPost: i18n.translate('home.tutorials.common.auditbeatInstructions.install.debTextPost', {
- defaultMessage: 'Looking for the 32-bit packages? See the [Download page]({linkUrl}).',
- values: {
- linkUrl: 'https://opensearch.org/docs/latest/downloads/beats/auditbeat',
- },
- }),
- },
- RPM: {
- title: i18n.translate('home.tutorials.common.auditbeatInstructions.install.rpmTitle', {
- defaultMessage: 'Download and install Auditbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.auditbeatInstructions.install.rpmTextPre', {
- defaultMessage: 'First time using Auditbeat? See the [Quick Start]({linkUrl}).',
- values: {
- linkUrl: '{config.docs.beats.auditbeat}/auditbeat-installation-configuration.html',
- },
- }),
- commands: [
- 'curl -L -O https://artifacts.opensearch.org/downloads/beats/auditbeat/auditbeat-{config.opensearchDashboards.version}-x64.rpm',
- 'sudo rpm -vi auditbeat-{config.opensearchDashboards.version}-x64.rpm',
- ],
- textPost: i18n.translate('home.tutorials.common.auditbeatInstructions.install.rpmTextPost', {
- defaultMessage: 'Looking for the 32-bit packages? See the [Download page]({linkUrl}).',
- values: {
- linkUrl: 'https://opensearch.org/docs/latest/downloads/beats/auditbeat',
- },
- }),
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.auditbeatInstructions.install.windowsTitle', {
- defaultMessage: 'Download and install Auditbeat',
- }),
- textPre: i18n.translate(
- 'home.tutorials.common.auditbeatInstructions.install.windowsTextPre',
- {
- defaultMessage:
- 'First time using Auditbeat? See the [Quick Start]({guideLinkUrl}).\n\
- 1. Download the Auditbeat Windows zip file from the [Download]({auditbeatLinkUrl}) page.\n\
- 2. Extract the contents of the zip file into {folderPath}.\n\
- 3. Rename the `{directoryName}` directory to `Auditbeat`.\n\
- 4. Open a PowerShell prompt as an Administrator (right-click the PowerShell icon and select \
-**Run As Administrator**). If you are running Windows XP, you might need to download and install PowerShell.\n\
- 5. From the PowerShell prompt, run the following commands to install Auditbeat as a Windows service.',
- values: {
- folderPath: '`C:\\Program Files`',
- guideLinkUrl: '{config.docs.beats.auditbeat}/auditbeat-installation-configuration.html',
- auditbeatLinkUrl: 'https://opensearch.org/docs/latest/downloads/beats/auditbeat',
- directoryName: 'auditbeat-{config.opensearchDashboards.version}-windows',
- },
- }
- ),
- commands: ['cd "C:\\Program Files\\Auditbeat"', '.\\install-service-auditbeat.ps1'],
- textPost: i18n.translate(
- 'home.tutorials.common.auditbeatInstructions.install.windowsTextPost',
- {
- defaultMessage:
- 'Modify the settings under {propertyName} in the {auditbeatPath} file to point to your OpenSearch installation.',
- values: {
- propertyName: '`output.opensearch`',
- auditbeatPath: '`C:\\Program Files\\Auditbeat\\auditbeat.yml`',
- },
- }
- ),
- },
- },
- START: {
- OSX: {
- title: i18n.translate('home.tutorials.common.auditbeatInstructions.start.osxTitle', {
- defaultMessage: 'Start Auditbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.auditbeatInstructions.start.osxTextPre', {
- defaultMessage:
- 'The `setup` command loads the OpenSearch Dashboards dashboards. If the dashboards are already set up, omit this command.',
- }),
- commands: ['./auditbeat setup', './auditbeat -e'],
- },
- DEB: {
- title: i18n.translate('home.tutorials.common.auditbeatInstructions.start.debTitle', {
- defaultMessage: 'Start Auditbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.auditbeatInstructions.start.debTextPre', {
- defaultMessage:
- 'The `setup` command loads the OpenSearch Dashboards dashboards. If the dashboards are already set up, omit this command.',
- }),
- commands: ['sudo auditbeat setup', 'sudo service auditbeat start'],
- },
- RPM: {
- title: i18n.translate('home.tutorials.common.auditbeatInstructions.start.rpmTitle', {
- defaultMessage: 'Start Auditbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.auditbeatInstructions.start.rpmTextPre', {
- defaultMessage:
- 'The `setup` command loads the OpenSearch Dashboards dashboards. If the dashboards are already set up, omit this command.',
- }),
- commands: ['sudo auditbeat setup', 'sudo service auditbeat start'],
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.auditbeatInstructions.start.windowsTitle', {
- defaultMessage: 'Start Auditbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.auditbeatInstructions.start.windowsTextPre', {
- defaultMessage:
- 'The `setup` command loads the OpenSearch Dashboards dashboards. If the dashboards are already set up, omit this command.',
- }),
- commands: ['.\\auditbeat.exe setup', 'Start-Service auditbeat'],
- },
- },
- CONFIG: {
- OSX: {
- title: i18n.translate('home.tutorials.common.auditbeatInstructions.config.osxTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate('home.tutorials.common.auditbeatInstructions.config.osxTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`auditbeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate('home.tutorials.common.auditbeatInstructions.config.osxTextPost', {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of OpenSearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }),
- },
- DEB: {
- title: i18n.translate('home.tutorials.common.auditbeatInstructions.config.debTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate('home.tutorials.common.auditbeatInstructions.config.debTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`/etc/auditbeat/auditbeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate('home.tutorials.common.auditbeatInstructions.config.debTextPost', {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of OpenSearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }),
- },
- RPM: {
- title: i18n.translate('home.tutorials.common.auditbeatInstructions.config.rpmTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate('home.tutorials.common.auditbeatInstructions.config.rpmTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`/etc/auditbeat/auditbeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate('home.tutorials.common.auditbeatInstructions.config.rpmTextPost', {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of OpenSearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }),
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.auditbeatInstructions.config.windowsTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate('home.tutorials.common.auditbeatInstructions.config.windowsTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`C:\\Program Files\\Auditbeat\\auditbeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate(
- 'home.tutorials.common.auditbeatInstructions.config.windowsTextPost',
- {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of OpenSearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }
- ),
- },
- },
-});
-
-export function auditbeatStatusCheck() {
- return {
- title: i18n.translate('home.tutorials.common.auditbeatStatusCheck.title', {
- defaultMessage: 'Status',
- }),
- text: i18n.translate('home.tutorials.common.auditbeatStatusCheck.text', {
- defaultMessage: 'Check that data is received from Auditbeat',
- }),
- btnLabel: i18n.translate('home.tutorials.common.auditbeatStatusCheck.buttonLabel', {
- defaultMessage: 'Check data',
- }),
- success: i18n.translate('home.tutorials.common.auditbeatStatusCheck.successText', {
- defaultMessage: 'Data successfully received',
- }),
- error: i18n.translate('home.tutorials.common.auditbeatStatusCheck.errorText', {
- defaultMessage: 'No data has been received yet',
- }),
- opensearchHitsCheck: {
- index: 'auditbeat-*',
- query: {
- bool: {
- filter: {
- term: {
- 'agent.type': 'auditbeat',
- },
- },
- },
- },
- },
- };
-}
-
-export function onPremInstructions(platforms: readonly Platform[], context?: TutorialContext) {
- const AUDITBEAT_INSTRUCTIONS = createAuditbeatInstructions(context);
-
- const variants = [];
- for (let i = 0; i < platforms.length; i++) {
- const platform = platforms[i];
- const instructions = [];
- instructions.push(AUDITBEAT_INSTRUCTIONS.INSTALL[platform]);
- instructions.push(AUDITBEAT_INSTRUCTIONS.CONFIG[platform]);
- instructions.push(AUDITBEAT_INSTRUCTIONS.START[platform]);
- variants.push({
- id: INSTRUCTION_VARIANT[platform],
- instructions,
- });
- }
- return {
- instructionSets: [
- {
- title: i18n.translate(
- 'home.tutorials.common.auditbeat.premInstructions.gettingStarted.title',
- {
- defaultMessage: 'Getting Started',
- }
- ),
- instructionVariants: variants,
- statusCheck: auditbeatStatusCheck(),
- },
- ],
- };
-}
diff --git a/src/plugins/home/server/tutorials/instructions/filebeat_instructions.ts b/src/plugins/home/server/tutorials/instructions/filebeat_instructions.ts
deleted file mode 100644
index 0d47f760dd0c..000000000000
--- a/src/plugins/home/server/tutorials/instructions/filebeat_instructions.ts
+++ /dev/null
@@ -1,424 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { INSTRUCTION_VARIANT } from '../../../common/instruction_variant';
-import { getSpaceIdForBeatsTutorial } from './get_space_id_for_beats_tutorial';
-import { Platform, TutorialContext } from '../../services/tutorials/lib/tutorials_registry_types';
-
-export const createFilebeatInstructions = (context?: TutorialContext) => ({
- INSTALL: {
- OSX: {
- title: i18n.translate('home.tutorials.common.filebeatInstructions.install.osxTitle', {
- defaultMessage: 'Download and install Filebeat',
- }),
- textPre: i18n.translate('home.tutorials.common.filebeatInstructions.install.osxTextPre', {
- defaultMessage: 'First time using Filebeat? See the [Quick Start]({linkUrl}).',
- values: {
- linkUrl: '{config.docs.beats.filebeat}/filebeat-installation-configuration.html',
- },
- }),
- commands: [
- 'curl -L -O https://artifacts.opensearch.org/downloads/beats/filebeat/filebeat-{config.opensearchDashboards.version}-darwin-x64.tar.gz',
- 'tar xzvf filebeat-{config.opensearchDashboards.version}-darwin-x64.tar.gz',
- 'cd filebeat-{config.opensearchDashboards.version}-darwin-x64/',
- ],
- },
- DEB: {
- title: i18n.translate('home.tutorials.common.filebeatInstructions.install.debTitle', {
- defaultMessage: 'Download and install Filebeat',
- }),
- textPre: i18n.translate('home.tutorials.common.filebeatInstructions.install.debTextPre', {
- defaultMessage: 'First time using Filebeat? See the [Quick Start]({linkUrl}).',
- values: {
- linkUrl: '{config.docs.beats.filebeat}/filebeat-installation-configuration.html',
- },
- }),
- commands: [
- 'curl -L -O https://artifacts.opensearch.org/downloads/beats/filebeat/filebeat-{config.opensearchDashboards.version}-amd64.deb',
- 'sudo dpkg -i filebeat-{config.opensearchDashboards.version}-amd64.deb',
- ],
- textPost: i18n.translate('home.tutorials.common.filebeatInstructions.install.debTextPost', {
- defaultMessage: 'Looking for the 32-bit packages? See the [Download page]({linkUrl}).',
- values: {
- linkUrl: 'https://opensearch.org/docs/latest/downloads/beats/filebeat',
- },
- }),
- },
- RPM: {
- title: i18n.translate('home.tutorials.common.filebeatInstructions.install.rpmTitle', {
- defaultMessage: 'Download and install Filebeat',
- }),
- textPre: i18n.translate('home.tutorials.common.filebeatInstructions.install.rpmTextPre', {
- defaultMessage: 'First time using Filebeat? See the [Quick Start]({linkUrl}).',
- values: {
- linkUrl: '{config.docs.beats.filebeat}/filebeat-installation-configuration.html',
- },
- }),
- commands: [
- 'curl -L -O https://artifacts.opensearch.org/downloads/beats/filebeat/filebeat-{config.opensearchDashboards.version}-x64.rpm',
- 'sudo rpm -vi filebeat-{config.opensearchDashboards.version}-x64.rpm',
- ],
- textPost: i18n.translate('home.tutorials.common.filebeatInstructions.install.rpmTextPost', {
- defaultMessage: 'Looking for the 32-bit packages? See the [Download page]({linkUrl}).',
- values: {
- linkUrl: 'https://opensearch.org/docs/latest/downloads/beats/filebeat',
- },
- }),
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.filebeatInstructions.install.windowsTitle', {
- defaultMessage: 'Download and install Filebeat',
- }),
- textPre: i18n.translate('home.tutorials.common.filebeatInstructions.install.windowsTextPre', {
- defaultMessage:
- 'First time using Filebeat? See the [Quick Start]({guideLinkUrl}).\n\
- 1. Download the Filebeat Windows zip file from the [Download]({filebeatLinkUrl}) page.\n\
- 2. Extract the contents of the zip file into {folderPath}.\n\
- 3. Rename the `{directoryName}` directory to `Filebeat`.\n\
- 4. Open a PowerShell prompt as an Administrator (right-click the PowerShell icon and select \
-**Run As Administrator**). If you are running Windows XP, you might need to download and install PowerShell.\n\
- 5. From the PowerShell prompt, run the following commands to install Filebeat as a Windows service.',
- values: {
- folderPath: '`C:\\Program Files`',
- guideLinkUrl: '{config.docs.beats.filebeat}/filebeat-installation-configuration.html',
- filebeatLinkUrl: 'https://opensearch.org/docs/latest/downloads/beats/filebeat',
- directoryName: 'filebeat-{config.opensearchDashboards.version}-windows',
- },
- }),
- commands: ['cd "C:\\Program Files\\Filebeat"', '.\\install-service-filebeat.ps1'],
- textPost: i18n.translate(
- 'home.tutorials.common.filebeatInstructions.install.windowsTextPost',
- {
- defaultMessage:
- 'Modify the settings under {propertyName} in the {filebeatPath} file to point to your OpenSearch installation.',
- values: {
- propertyName: '`output.opensearch`',
- filebeatPath: '`C:\\Program Files\\Filebeat\\filebeat.yml`',
- },
- }
- ),
- },
- },
- START: {
- OSX: {
- title: i18n.translate('home.tutorials.common.filebeatInstructions.start.osxTitle', {
- defaultMessage: 'Start Filebeat',
- }),
- textPre: i18n.translate('home.tutorials.common.filebeatInstructions.start.osxTextPre', {
- defaultMessage:
- 'The `setup` command loads the OpenSearch Dashboards dashboards. If the dashboards are already set up, omit this command.',
- }),
- commands: ['./filebeat setup', './filebeat -e'],
- },
- DEB: {
- title: i18n.translate('home.tutorials.common.filebeatInstructions.start.debTitle', {
- defaultMessage: 'Start Filebeat',
- }),
- textPre: i18n.translate('home.tutorials.common.filebeatInstructions.start.debTextPre', {
- defaultMessage:
- 'The `setup` command loads the OpenSearch Dashboards dashboards. If the dashboards are already set up, omit this command.',
- }),
- commands: ['sudo filebeat setup', 'sudo service filebeat start'],
- },
- RPM: {
- title: i18n.translate('home.tutorials.common.filebeatInstructions.start.rpmTitle', {
- defaultMessage: 'Start Filebeat',
- }),
- textPre: i18n.translate('home.tutorials.common.filebeatInstructions.start.rpmTextPre', {
- defaultMessage:
- 'The `setup` command loads the OpenSearch Dashboards dashboards. If the dashboards are already set up, omit this command.',
- }),
- commands: ['sudo filebeat setup', 'sudo service filebeat start'],
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.filebeatInstructions.start.windowsTitle', {
- defaultMessage: 'Start Filebeat',
- }),
- textPre: i18n.translate('home.tutorials.common.filebeatInstructions.start.windowsTextPre', {
- defaultMessage:
- 'The `setup` command loads the OpenSearch Dashboards dashboards. If the dashboards are already set up, omit this command.',
- }),
- commands: ['.\\filebeat.exe setup', 'Start-Service filebeat'],
- },
- },
- CONFIG: {
- OSX: {
- title: i18n.translate('home.tutorials.common.filebeatInstructions.config.osxTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate('home.tutorials.common.filebeatInstructions.config.osxTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`filebeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate('home.tutorials.common.filebeatInstructions.config.osxTextPost', {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of opensearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }),
- },
- DEB: {
- title: i18n.translate('home.tutorials.common.filebeatInstructions.config.debTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate('home.tutorials.common.filebeatInstructions.config.debTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`/etc/filebeat/filebeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate('home.tutorials.common.filebeatInstructions.config.debTextPost', {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of opensearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }),
- },
- RPM: {
- title: i18n.translate('home.tutorials.common.filebeatInstructions.config.rpmTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate('home.tutorials.common.filebeatInstructions.config.rpmTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`/etc/filebeat/filebeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate('home.tutorials.common.filebeatInstructions.config.rpmTextPost', {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of opensearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }),
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.filebeatInstructions.config.windowsTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate('home.tutorials.common.filebeatInstructions.config.windowsTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`C:\\Program Files\\Filebeat\\filebeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate(
- 'home.tutorials.common.filebeatInstructions.config.windowsTextPost',
- {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of opensearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }
- ),
- },
- },
-});
-
-export function filebeatEnableInstructions(moduleName: string) {
- return {
- OSX: {
- title: i18n.translate('home.tutorials.common.filebeatEnableInstructions.osxTitle', {
- defaultMessage: 'Enable and configure the {moduleName} module',
- values: { moduleName },
- }),
- textPre: i18n.translate('home.tutorials.common.filebeatEnableInstructions.osxTextPre', {
- defaultMessage: 'From the installation directory, run:',
- }),
- commands: ['./filebeat modules enable ' + moduleName],
- textPost: i18n.translate('home.tutorials.common.filebeatEnableInstructions.osxTextPost', {
- defaultMessage: 'Modify the settings in the `modules.d/{moduleName}.yml` file.',
- values: { moduleName },
- }),
- },
- DEB: {
- title: i18n.translate('home.tutorials.common.filebeatEnableInstructions.debTitle', {
- defaultMessage: 'Enable and configure the {moduleName} module',
- values: { moduleName },
- }),
- commands: ['sudo filebeat modules enable ' + moduleName],
- textPost: i18n.translate('home.tutorials.common.filebeatEnableInstructions.debTextPost', {
- defaultMessage:
- 'Modify the settings in the `/etc/filebeat/modules.d/{moduleName}.yml` file.',
- values: { moduleName },
- }),
- },
- RPM: {
- title: i18n.translate('home.tutorials.common.filebeatEnableInstructions.rpmTitle', {
- defaultMessage: 'Enable and configure the {moduleName} module',
- values: { moduleName },
- }),
- commands: ['sudo filebeat modules enable ' + moduleName],
- textPost: i18n.translate('home.tutorials.common.filebeatEnableInstructions.rpmTextPost', {
- defaultMessage:
- 'Modify the settings in the `/etc/filebeat/modules.d/{moduleName}.yml` file.',
- values: { moduleName },
- }),
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.filebeatEnableInstructions.windowsTitle', {
- defaultMessage: 'Enable and configure the {moduleName} module',
- values: { moduleName },
- }),
- textPre: i18n.translate('home.tutorials.common.filebeatEnableInstructions.windowsTextPre', {
- defaultMessage: 'From the {path} folder, run:',
- values: { path: `C:\\Program Files\\Filebeat` },
- }),
- commands: ['filebeat.exe modules enable ' + moduleName],
- textPost: i18n.translate('home.tutorials.common.filebeatEnableInstructions.windowsTextPost', {
- defaultMessage: 'Modify the settings in the `modules.d/{moduleName}.yml` file.',
- values: { moduleName },
- }),
- },
- };
-}
-
-export function filebeatStatusCheck(moduleName: string) {
- return {
- title: i18n.translate('home.tutorials.common.filebeatStatusCheck.title', {
- defaultMessage: 'Module status',
- }),
- text: i18n.translate('home.tutorials.common.filebeatStatusCheck.text', {
- defaultMessage: 'Check that data is received from the Filebeat `{moduleName}` module',
- values: { moduleName },
- }),
- btnLabel: i18n.translate('home.tutorials.common.filebeatStatusCheck.buttonLabel', {
- defaultMessage: 'Check data',
- }),
- success: i18n.translate('home.tutorials.common.filebeatStatusCheck.successText', {
- defaultMessage: 'Data successfully received from this module',
- }),
- error: i18n.translate('home.tutorials.common.filebeatStatusCheck.errorText', {
- defaultMessage: 'No data has been received from this module yet',
- }),
- opensearchHitsCheck: {
- index: 'filebeat-*',
- query: {
- bool: {
- filter: {
- term: {
- 'event.module': moduleName,
- },
- },
- },
- },
- },
- };
-}
-
-export function onPremInstructions(
- moduleName: string,
- platforms: readonly Platform[] = [],
- context?: TutorialContext
-) {
- const FILEBEAT_INSTRUCTIONS = createFilebeatInstructions(context);
-
- const variants = [];
- for (let i = 0; i < platforms.length; i++) {
- const platform = platforms[i];
- const instructions = [];
- instructions.push(FILEBEAT_INSTRUCTIONS.INSTALL[platform]);
- instructions.push(FILEBEAT_INSTRUCTIONS.CONFIG[platform]);
- instructions.push(filebeatEnableInstructions(moduleName)[platform]);
- instructions.push(FILEBEAT_INSTRUCTIONS.START[platform]);
- variants.push({
- id: INSTRUCTION_VARIANT[platform],
- instructions,
- });
- }
- return {
- instructionSets: [
- {
- title: i18n.translate(
- 'home.tutorials.common.filebeat.premInstructions.gettingStarted.title',
- {
- defaultMessage: 'Getting Started',
- }
- ),
- instructionVariants: variants,
- statusCheck: filebeatStatusCheck(moduleName),
- },
- ],
- };
-}
diff --git a/src/plugins/home/server/tutorials/instructions/functionbeat_instructions.ts b/src/plugins/home/server/tutorials/instructions/functionbeat_instructions.ts
deleted file mode 100644
index add467f39645..000000000000
--- a/src/plugins/home/server/tutorials/instructions/functionbeat_instructions.ts
+++ /dev/null
@@ -1,367 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { INSTRUCTION_VARIANT } from '../../../common/instruction_variant';
-import { getSpaceIdForBeatsTutorial } from './get_space_id_for_beats_tutorial';
-import { Platform, TutorialContext } from '../../services/tutorials/lib/tutorials_registry_types';
-
-export const createFunctionbeatInstructions = (context?: TutorialContext) => ({
- INSTALL: {
- OSX: {
- title: i18n.translate('home.tutorials.common.functionbeatInstructions.install.osxTitle', {
- defaultMessage: 'Download and install Functionbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.functionbeatInstructions.install.osxTextPre', {
- defaultMessage: 'First time using Functionbeat? See the [Quick Start]({link}).',
- values: {
- link: '{config.docs.beats.functionbeat}/functionbeat-installation-configuration.html',
- },
- }),
- commands: [
- 'curl -L -O https://artifacts.opensearch.org/downloads/beats/functionbeat/functionbeat-{config.opensearchDashboards.version}-darwin-x64.tar.gz',
- 'tar xzvf functionbeat-{config.opensearchDashboards.version}-darwin-x64.tar.gz',
- 'cd functionbeat-{config.opensearchDashboards.version}-darwin-x64/',
- ],
- },
- LINUX: {
- title: i18n.translate('home.tutorials.common.functionbeatInstructions.install.linuxTitle', {
- defaultMessage: 'Download and install Functionbeat',
- }),
- textPre: i18n.translate(
- 'home.tutorials.common.functionbeatInstructions.install.linuxTextPre',
- {
- defaultMessage: 'First time using Functionbeat? See the [Quick Start]({link}).',
- values: {
- link: '{config.docs.beats.functionbeat}/functionbeat-installation-configuration.html',
- },
- }
- ),
- commands: [
- 'curl -L -O https://artifacts.opensearch.org/downloads/beats/functionbeat/functionbeat-{config.opensearchDashboards.version}-linux-x64.tar.gz',
- 'tar xzvf functionbeat-{config.opensearchDashboards.version}-linux-x64.tar.gz',
- 'cd functionbeat-{config.opensearchDashboards.version}-linux-x64/',
- ],
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.functionbeatInstructions.install.windowsTitle', {
- defaultMessage: 'Download and install Functionbeat',
- }),
- textPre: i18n.translate(
- 'home.tutorials.common.functionbeatInstructions.install.windowsTextPre',
- {
- defaultMessage:
- 'First time using Functionbeat? See the [Quick Start]({functionbeatLink}).\n\
- 1. Download the Functionbeat Windows zip file from the [Download]({opensearchLink}) page.\n\
- 2. Extract the contents of the zip file into {folderPath}.\n\
- 3. Rename the {directoryName} directory to `Functionbeat`.\n\
- 4. Open a PowerShell prompt as an Administrator (right-click the PowerShell icon and select \
-**Run As Administrator**). If you are running Windows XP, you might need to download and install PowerShell.\n\
- 5. From the PowerShell prompt, go to the Functionbeat directory:',
- values: {
- directoryName: '`functionbeat-{config.opensearchDashboards.version}-windows`',
- folderPath: '`C:\\Program Files`',
- functionbeatLink:
- '{config.docs.beats.functionbeat}/functionbeat-installation-configuration.html',
- opensearchLink: 'https://opensearch.org/docs/latest/downloads/beats/functionbeat',
- },
- }
- ),
- commands: ['cd "C:\\Program Files\\Functionbeat"'],
- },
- },
- DEPLOY: {
- OSX_LINUX: {
- title: i18n.translate('home.tutorials.common.functionbeatInstructions.deploy.osxTitle', {
- defaultMessage: 'Deploy Functionbeat to AWS Lambda',
- }),
- textPre: i18n.translate('home.tutorials.common.functionbeatInstructions.deploy.osxTextPre', {
- defaultMessage:
- 'This installs Functionbeat as a Lambda function.\
-The `setup` command checks the opensearch configuration and loads the \
-OpenSearch Dashboards index pattern. It is normally safe to omit this command.',
- }),
- commands: ['./functionbeat setup', './functionbeat deploy fn-cloudwatch-logs'],
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.functionbeatInstructions.deploy.windowsTitle', {
- defaultMessage: 'Deploy Functionbeat to AWS Lambda',
- }),
- textPre: i18n.translate(
- 'home.tutorials.common.functionbeatInstructions.deploy.windowsTextPre',
- {
- defaultMessage:
- 'This installs Functionbeat as a Lambda function.\
-The `setup` command checks the opensearch configuration and loads the \
-OpenSearch Dashboards index pattern. It is normally safe to omit this command.',
- }
- ),
- commands: ['.\\functionbeat.exe setup', '.\\functionbeat.exe deploy fn-cloudwatch-logs'],
- },
- },
- CONFIG: {
- OSX_LINUX: {
- title: i18n.translate('home.tutorials.common.functionbeatInstructions.config.osxTitle', {
- defaultMessage: 'Configure the OpenSearch cluster',
- }),
- textPre: i18n.translate('home.tutorials.common.functionbeatInstructions.config.osxTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`functionbeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate(
- 'home.tutorials.common.functionbeatInstructions.config.osxTextPost',
- {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of opensearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }
- ),
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.functionbeatInstructions.config.windowsTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate(
- 'home.tutorials.common.functionbeatInstructions.config.windowsTextPre',
- {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`C:\\Program Files\\Functionbeat\\functionbeat.yml`',
- },
- }
- ),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate(
- 'home.tutorials.common.functionbeatInstructions.config.windowsTextPost',
- {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of opensearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }
- ),
- },
- },
-});
-
-export function functionbeatEnableInstructions() {
- const defaultTitle = i18n.translate(
- 'home.tutorials.common.functionbeatEnableOnPremInstructions.defaultTitle',
- {
- defaultMessage: 'Configure the Cloudwatch log group',
- }
- );
- const defaultCommands = [
- 'functionbeat.provider.aws.functions:',
- ' - name: fn-cloudwatch-logs',
- ' enabled: true',
- ' type: cloudwatch_logs',
- ' triggers:',
- ' - log_group_name: ',
- 'functionbeat.provider.aws.deploy_bucket: ',
- ];
- const defaultTextPost = i18n.translate(
- 'home.tutorials.common.functionbeatEnableOnPremInstructions.defaultTextPost',
- {
- defaultMessage:
- 'Where `` is the name of the log group you want to ingest, \
-and `` is a valid S3 bucket name which will be used for staging the \
-Functionbeat deploy.',
- }
- );
- return {
- OSX_LINUX: {
- title: defaultTitle,
- textPre: i18n.translate(
- 'home.tutorials.common.functionbeatEnableOnPremInstructionsOSXLinux.textPre',
- {
- defaultMessage: 'Modify the settings in the `functionbeat.yml` file.',
- }
- ),
- commands: defaultCommands,
- textPost: defaultTextPost,
- },
- WINDOWS: {
- title: defaultTitle,
- textPre: i18n.translate(
- 'home.tutorials.common.functionbeatEnableOnPremInstructionsWindows.textPre',
- {
- defaultMessage: 'Modify the settings in the {path} file.',
- values: {
- path: '`C:\\Program Files\\Functionbeat\\functionbeat.yml`',
- },
- }
- ),
- commands: defaultCommands,
- textPost: defaultTextPost,
- },
- };
-}
-
-export function functionbeatAWSInstructions() {
- const defaultTitle = i18n.translate('home.tutorials.common.functionbeatAWSInstructions.title', {
- defaultMessage: 'Set AWS credentials',
- });
- const defaultPre = i18n.translate('home.tutorials.common.functionbeatAWSInstructions.textPre', {
- defaultMessage: 'Set your AWS account credentials in the environment:',
- });
- const defaultPost = i18n.translate('home.tutorials.common.functionbeatAWSInstructions.textPost', {
- defaultMessage:
- 'Where `` and `` are your account credentials and \
-`us-east-1` is the desired region.',
- });
-
- return {
- OSX_LINUX: {
- title: defaultTitle,
- textPre: defaultPre,
- commands: [
- 'export AWS_ACCESS_KEY_ID=',
- 'export AWS_SECRET_ACCESS_KEY=',
- 'export AWS_DEFAULT_REGION=us-east-1',
- ],
- textPost: defaultPost,
- },
- WINDOWS: {
- title: defaultTitle,
- textPre: defaultPre,
- commands: [
- 'set AWS_ACCESS_KEY_ID=',
- 'set AWS_SECRET_ACCESS_KEY=',
- 'set AWS_DEFAULT_REGION=us-east-1',
- ],
- textPost: defaultPost,
- },
- };
-}
-
-export function functionbeatStatusCheck() {
- return {
- title: i18n.translate('home.tutorials.common.functionbeatStatusCheck.title', {
- defaultMessage: 'Functionbeat status',
- }),
- text: i18n.translate('home.tutorials.common.functionbeatStatusCheck.text', {
- defaultMessage: 'Check that data is received from Functionbeat',
- }),
- btnLabel: i18n.translate('home.tutorials.common.functionbeatStatusCheck.buttonLabel', {
- defaultMessage: 'Check data',
- }),
- success: i18n.translate('home.tutorials.common.functionbeatStatusCheck.successText', {
- defaultMessage: 'Data successfully received from Functionbeat',
- }),
- error: i18n.translate('home.tutorials.common.functionbeatStatusCheck.errorText', {
- defaultMessage: 'No data has been received from Functionbeat yet',
- }),
- opensearchHitsCheck: {
- index: 'functionbeat-*',
- query: {
- match_all: {},
- },
- },
- };
-}
-
-export function onPremInstructions(platforms: Platform[], context?: TutorialContext) {
- const FUNCTIONBEAT_INSTRUCTIONS = createFunctionbeatInstructions(context);
-
- return {
- instructionSets: [
- {
- title: i18n.translate(
- 'home.tutorials.common.functionbeat.premInstructions.gettingStarted.title',
- {
- defaultMessage: 'Getting Started',
- }
- ),
- instructionVariants: [
- {
- id: INSTRUCTION_VARIANT.OSX,
- instructions: [
- FUNCTIONBEAT_INSTRUCTIONS.INSTALL.OSX,
- functionbeatAWSInstructions().OSX_LINUX,
- functionbeatEnableInstructions().OSX_LINUX,
- FUNCTIONBEAT_INSTRUCTIONS.CONFIG.OSX_LINUX,
- FUNCTIONBEAT_INSTRUCTIONS.DEPLOY.OSX_LINUX,
- ],
- },
- {
- id: INSTRUCTION_VARIANT.LINUX,
- instructions: [
- FUNCTIONBEAT_INSTRUCTIONS.INSTALL.LINUX,
- functionbeatAWSInstructions().OSX_LINUX,
- functionbeatEnableInstructions().OSX_LINUX,
- FUNCTIONBEAT_INSTRUCTIONS.CONFIG.OSX_LINUX,
- FUNCTIONBEAT_INSTRUCTIONS.DEPLOY.OSX_LINUX,
- ],
- },
- {
- id: INSTRUCTION_VARIANT.WINDOWS,
- instructions: [
- FUNCTIONBEAT_INSTRUCTIONS.INSTALL.WINDOWS,
- functionbeatAWSInstructions().WINDOWS,
- functionbeatEnableInstructions().WINDOWS,
- FUNCTIONBEAT_INSTRUCTIONS.CONFIG.WINDOWS,
- FUNCTIONBEAT_INSTRUCTIONS.DEPLOY.WINDOWS,
- ],
- },
- ],
- statusCheck: functionbeatStatusCheck(),
- },
- ],
- };
-}
diff --git a/src/plugins/home/server/tutorials/instructions/get_space_id_for_beats_tutorial.ts b/src/plugins/home/server/tutorials/instructions/get_space_id_for_beats_tutorial.ts
deleted file mode 100644
index 2b1082c31c59..000000000000
--- a/src/plugins/home/server/tutorials/instructions/get_space_id_for_beats_tutorial.ts
+++ /dev/null
@@ -1,45 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { TutorialContext } from '../../services/tutorials/lib/tutorials_registry_types';
-
-/**
- * Returns valid configuration for a beat.yml file for adding the space id
- * if there is an active space and that space is not the default one.
- *
- * @param {object} context - Context object generated from tutorial factory (see #22760)
- */
-export function getSpaceIdForBeatsTutorial(context?: TutorialContext) {
- if (!context || !context.spaceId || context.isInDefaultSpace) {
- return '';
- }
-
- return ` space.id: "${context.spaceId}"`;
-}
diff --git a/src/plugins/home/server/tutorials/instructions/heartbeat_instructions.ts b/src/plugins/home/server/tutorials/instructions/heartbeat_instructions.ts
deleted file mode 100644
index 4c85c0dbc960..000000000000
--- a/src/plugins/home/server/tutorials/instructions/heartbeat_instructions.ts
+++ /dev/null
@@ -1,491 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { INSTRUCTION_VARIANT } from '../../../common/instruction_variant';
-import { getSpaceIdForBeatsTutorial } from './get_space_id_for_beats_tutorial';
-import { Platform, TutorialContext } from '../../services/tutorials/lib/tutorials_registry_types';
-
-export const createHeartbeatInstructions = (context?: TutorialContext) => ({
- INSTALL: {
- OSX: {
- title: i18n.translate('home.tutorials.common.heartbeatInstructions.install.osxTitle', {
- defaultMessage: 'Download and install Heartbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.heartbeatInstructions.install.osxTextPre', {
- defaultMessage: 'First time using Heartbeat? See the [Quick Start]({link}).',
- values: { link: '{config.docs.beats.heartbeat}/heartbeat-installation-configuration.html' },
- }),
- commands: [
- 'curl -L -O https://artifacts.opensearch.org/downloads/beats/heartbeat/heartbeat-{config.opensearchDashboards.version}-darwin-x64.tar.gz',
- 'tar xzvf heartbeat-{config.opensearchDashboards.version}-darwin-x64.tar.gz',
- 'cd heartbeat-{config.opensearchDashboards.version}-darwin-x64/',
- ],
- },
- DEB: {
- title: i18n.translate('home.tutorials.common.heartbeatInstructions.install.debTitle', {
- defaultMessage: 'Download and install Heartbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.heartbeatInstructions.install.debTextPre', {
- defaultMessage: 'First time using Heartbeat? See the [Quick Start]({link}).',
- values: { link: '{config.docs.beats.heartbeat}/heartbeat-installation-configuration.html' },
- }),
- commands: [
- 'curl -L -O https://artifacts.opensearch.org/downloads/beats/heartbeat/heartbeat-{config.opensearchDashboards.version}-amd64.deb',
- 'sudo dpkg -i heartbeat-{config.opensearchDashboards.version}-amd64.deb',
- ],
- textPost: i18n.translate('home.tutorials.common.heartbeatInstructions.install.debTextPost', {
- defaultMessage: 'Looking for the 32-bit packages? See the [Download page]({link}).',
- values: { link: 'https://opensearch.org/docs/latest/downloads/beats/heartbeat' },
- }),
- },
- RPM: {
- title: i18n.translate('home.tutorials.common.heartbeatInstructions.install.rpmTitle', {
- defaultMessage: 'Download and install Heartbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.heartbeatInstructions.install.rpmTextPre', {
- defaultMessage: 'First time using Heartbeat? See the [Quick Start]({link}).',
- values: { link: '{config.docs.beats.heartbeat}/heartbeat-installation-configuration.html' },
- }),
- commands: [
- 'curl -L -O https://artifacts.opensearch.org/downloads/beats/heartbeat/heartbeat-{config.opensearchDashboards.version}-x64.rpm',
- 'sudo rpm -vi heartbeat-{config.opensearchDashboards.version}-x64.rpm',
- ],
- textPost: i18n.translate('home.tutorials.common.heartbeatInstructions.install.debTextPost', {
- defaultMessage: 'Looking for the 32-bit packages? See the [Download page]({link}).',
- values: { link: 'https://opensearch.org/docs/latest/downloads/beats/heartbeat' },
- }),
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.heartbeatInstructions.install.windowsTitle', {
- defaultMessage: 'Download and install Heartbeat',
- }),
- textPre: i18n.translate(
- 'home.tutorials.common.heartbeatInstructions.install.windowsTextPre',
- {
- defaultMessage:
- 'First time using Heartbeat? See the [Quick Start]({heartbeatLink}).\n\
- 1. Download the Heartbeat Windows zip file from the [Download]({opensearchLink}) page.\n\
- 2. Extract the contents of the zip file into {folderPath}.\n\
- 3. Rename the {directoryName} directory to `Heartbeat`.\n\
- 4. Open a PowerShell prompt as an Administrator (right-click the PowerShell icon and select \
-**Run As Administrator**). If you are running Windows XP, you might need to download and install PowerShell.\n\
- 5. From the PowerShell prompt, run the following commands to install Heartbeat as a Windows service.',
- values: {
- directoryName: '`heartbeat-{config.opensearchDashboards.version}-windows`',
- folderPath: '`C:\\Program Files`',
- heartbeatLink:
- '{config.docs.beats.heartbeat}/heartbeat-installation-configuration.html',
- opensearchLink: 'https://opensearch.org/docs/latest/downloads/beats/heartbeat',
- },
- }
- ),
- commands: ['cd "C:\\Program Files\\Heartbeat"', '.\\install-service-heartbeat.ps1'],
- },
- },
- START: {
- OSX: {
- title: i18n.translate('home.tutorials.common.heartbeatInstructions.start.osxTitle', {
- defaultMessage: 'Start Heartbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.heartbeatInstructions.start.osxTextPre', {
- defaultMessage: 'The `setup` command loads the OpenSearch Dashboards index pattern.',
- }),
- commands: ['./heartbeat setup', './heartbeat -e'],
- },
- DEB: {
- title: i18n.translate('home.tutorials.common.heartbeatInstructions.start.debTitle', {
- defaultMessage: 'Start Heartbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.heartbeatInstructions.start.debTextPre', {
- defaultMessage: 'The `setup` command loads the OpenSearch Dashboards index pattern.',
- }),
- commands: ['sudo heartbeat setup', 'sudo service heartbeat-elastic start'],
- },
- RPM: {
- title: i18n.translate('home.tutorials.common.heartbeatInstructions.start.rpmTitle', {
- defaultMessage: 'Start Heartbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.heartbeatInstructions.start.rpmTextPre', {
- defaultMessage: 'The `setup` command loads the OpenSearch Dashboards index pattern.',
- }),
- commands: ['sudo heartbeat setup', 'sudo service heartbeat-elastic start'],
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.heartbeatInstructions.start.windowsTitle', {
- defaultMessage: 'Start Heartbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.heartbeatInstructions.start.windowsTextPre', {
- defaultMessage: 'The `setup` command loads the OpenSearch Dashboards index pattern.',
- }),
- commands: ['.\\heartbeat.exe setup', 'Start-Service heartbeat'],
- },
- },
- CONFIG: {
- OSX: {
- title: i18n.translate('home.tutorials.common.heartbeatInstructions.config.osxTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate('home.tutorials.common.heartbeatInstructions.config.osxTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`heartbeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate('home.tutorials.common.heartbeatInstructions.config.osxTextPost', {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of opensearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }),
- },
- DEB: {
- title: i18n.translate('home.tutorials.common.heartbeatInstructions.config.debTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate('home.tutorials.common.heartbeatInstructions.config.debTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`/etc/heartbeat/heartbeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate('home.tutorials.common.heartbeatInstructions.config.debTextPost', {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of opensearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }),
- },
- RPM: {
- title: i18n.translate('home.tutorials.common.heartbeatInstructions.config.rpmTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate('home.tutorials.common.heartbeatInstructions.config.rpmTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`/etc/heartbeat/heartbeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate('home.tutorials.common.heartbeatInstructions.config.rpmTextPost', {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of opensearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }),
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.heartbeatInstructions.config.windowsTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate('home.tutorials.common.heartbeatInstructions.config.windowsTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`C:\\Program Files\\Heartbeat\\heartbeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate(
- 'home.tutorials.common.heartbeatInstructions.config.windowsTextPost',
- {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of opensearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }
- ),
- },
- },
-});
-
-export function heartbeatEnableInstructionsOnPrem() {
- const defaultTitle = i18n.translate(
- 'home.tutorials.common.heartbeatEnableOnPremInstructions.defaultTitle',
- {
- defaultMessage: 'Edit the configuration - Add monitors',
- }
- );
- const defaultCommands = [
- 'heartbeat.monitors:',
- '- type: http',
- ' urls: [""]',
- ' schedule: "@every 10s"',
- ];
- const defaultTextPost = i18n.translate(
- 'home.tutorials.common.heartbeatEnableOnPremInstructions.defaultTextPost',
- {
- defaultMessage:
- 'Where {hostTemplate} is your monitored URL, For more details on how to configure Monitors in \
- Heartbeat, read the [Heartbeat configuration docs.]({configureLink})',
- values: {
- configureLink: '{config.docs.beats.heartbeat}/configuring-howto-heartbeat.html',
- hostTemplate: '``',
- },
- }
- );
- return {
- OSX: {
- title: defaultTitle,
- textPre: i18n.translate(
- 'home.tutorials.common.heartbeatEnableOnPremInstructions.osxTextPre',
- {
- defaultMessage: 'Edit the `heartbeat.monitors` setting in the `heartbeat.yml` file.',
- }
- ),
- commands: defaultCommands,
- textPost: defaultTextPost,
- },
- DEB: {
- title: defaultTitle,
- textPre: i18n.translate(
- 'home.tutorials.common.heartbeatEnableOnPremInstructions.debTextPre',
- {
- defaultMessage: 'Edit the `heartbeat.monitors` setting in the `heartbeat.yml` file.',
- }
- ),
- commands: defaultCommands,
- textPost: defaultTextPost,
- },
- RPM: {
- title: defaultTitle,
- textPre: i18n.translate(
- 'home.tutorials.common.heartbeatEnableOnPremInstructions.rpmTextPre',
- {
- defaultMessage: 'Edit the `heartbeat.monitors` setting in the `heartbeat.yml` file.',
- }
- ),
- commands: defaultCommands,
- textPost: defaultTextPost,
- },
- WINDOWS: {
- title: defaultTitle,
- textPre: i18n.translate(
- 'home.tutorials.common.heartbeatEnableOnPremInstructions.windowsTextPre',
- {
- defaultMessage: 'Edit the `heartbeat.monitors` setting in the `heartbeat.yml` file.',
- }
- ),
- commands: defaultCommands,
- textPost: defaultTextPost,
- },
- };
-}
-
-export function heartbeatEnableInstructionsCloud() {
- const defaultTitle = i18n.translate(
- 'home.tutorials.common.heartbeatEnableCloudInstructions.defaultTitle',
- {
- defaultMessage: 'Edit the configuration - Add monitors',
- }
- );
- const defaultCommands = [
- 'heartbeat.monitors:',
- '- type: http',
- ' urls: ["http://opensearch.org"]',
- ' schedule: "@every 10s"',
- ];
- const defaultTextPost = i18n.translate(
- 'home.tutorials.common.heartbeatEnableCloudInstructions.defaultTextPost',
- {
- defaultMessage:
- 'For more details on how to configure Monitors in Heartbeat, read the [Heartbeat configuration docs.]({configureLink})',
- values: { configureLink: '{config.docs.beats.heartbeat}/configuring-howto-heartbeat.html' },
- }
- );
- return {
- OSX: {
- title: defaultTitle,
- textPre: i18n.translate('home.tutorials.common.heartbeatEnableCloudInstructions.osxTextPre', {
- defaultMessage: 'Edit the `heartbeat.monitors` setting in the `heartbeat.yml` file.',
- }),
- commands: defaultCommands,
- textPost: defaultTextPost,
- },
- DEB: {
- title: defaultTitle,
- textPre: i18n.translate('home.tutorials.common.heartbeatEnableCloudInstructions.debTextPre', {
- defaultMessage: 'Edit the `heartbeat.monitors` setting in the `heartbeat.yml` file.',
- }),
- commands: defaultCommands,
- textPost: defaultTextPost,
- },
- RPM: {
- title: defaultTitle,
- textPre: i18n.translate('home.tutorials.common.heartbeatEnableCloudInstructions.rpmTextPre', {
- defaultMessage: 'Edit the `heartbeat.monitors` setting in the `heartbeat.yml` file.',
- }),
- commands: defaultCommands,
- textPost: defaultTextPost,
- },
- WINDOWS: {
- title: defaultTitle,
- textPre: i18n.translate(
- 'home.tutorials.common.heartbeatEnableCloudInstructions.windowsTextPre',
- {
- defaultMessage: 'Edit the `heartbeat.monitors` setting in the `heartbeat.yml` file.',
- }
- ),
- commands: defaultCommands,
- textPost: defaultTextPost,
- },
- };
-}
-
-export function heartbeatStatusCheck() {
- return {
- title: i18n.translate('home.tutorials.common.heartbeatStatusCheck.title', {
- defaultMessage: 'Heartbeat status',
- }),
- text: i18n.translate('home.tutorials.common.heartbeatStatusCheck.text', {
- defaultMessage: 'Check that data is received from Heartbeat',
- }),
- btnLabel: i18n.translate('home.tutorials.common.heartbeatStatusCheck.buttonLabel', {
- defaultMessage: 'Check data',
- }),
- success: i18n.translate('home.tutorials.common.heartbeatStatusCheck.successText', {
- defaultMessage: 'Data successfully received from Heartbeat',
- }),
- error: i18n.translate('home.tutorials.common.heartbeatStatusCheck.errorText', {
- defaultMessage: 'No data has been received from Heartbeat yet',
- }),
- opensearchHitsCheck: {
- index: 'heartbeat-*',
- query: {
- match_all: {},
- },
- },
- };
-}
-
-export function onPremInstructions(platforms: Platform[], context?: TutorialContext) {
- const HEARTBEAT_INSTRUCTIONS = createHeartbeatInstructions(context);
-
- return {
- instructionSets: [
- {
- title: i18n.translate(
- 'home.tutorials.common.heartbeat.premInstructions.gettingStarted.title',
- {
- defaultMessage: 'Getting Started',
- }
- ),
- instructionVariants: [
- {
- id: INSTRUCTION_VARIANT.OSX,
- instructions: [
- HEARTBEAT_INSTRUCTIONS.INSTALL.OSX,
- HEARTBEAT_INSTRUCTIONS.CONFIG.OSX,
- heartbeatEnableInstructionsOnPrem().OSX,
- HEARTBEAT_INSTRUCTIONS.START.OSX,
- ],
- },
- {
- id: INSTRUCTION_VARIANT.DEB,
- instructions: [
- HEARTBEAT_INSTRUCTIONS.INSTALL.DEB,
- HEARTBEAT_INSTRUCTIONS.CONFIG.DEB,
- heartbeatEnableInstructionsOnPrem().DEB,
- HEARTBEAT_INSTRUCTIONS.START.DEB,
- ],
- },
- {
- id: INSTRUCTION_VARIANT.RPM,
- instructions: [
- HEARTBEAT_INSTRUCTIONS.INSTALL.RPM,
- HEARTBEAT_INSTRUCTIONS.CONFIG.RPM,
- heartbeatEnableInstructionsOnPrem().RPM,
- HEARTBEAT_INSTRUCTIONS.START.RPM,
- ],
- },
- {
- id: INSTRUCTION_VARIANT.WINDOWS,
- instructions: [
- HEARTBEAT_INSTRUCTIONS.INSTALL.WINDOWS,
- HEARTBEAT_INSTRUCTIONS.CONFIG.WINDOWS,
- heartbeatEnableInstructionsOnPrem().WINDOWS,
- HEARTBEAT_INSTRUCTIONS.START.WINDOWS,
- ],
- },
- ],
- statusCheck: heartbeatStatusCheck(),
- },
- ],
- };
-}
diff --git a/src/plugins/home/server/tutorials/instructions/logstash_instructions.ts b/src/plugins/home/server/tutorials/instructions/logstash_instructions.ts
deleted file mode 100644
index defab1fc357b..000000000000
--- a/src/plugins/home/server/tutorials/instructions/logstash_instructions.ts
+++ /dev/null
@@ -1,117 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-
-export const createLogstashInstructions = () => ({
- INSTALL: {
- OSX: [
- {
- title: i18n.translate('home.tutorials.common.logstashInstructions.install.java.osxTitle', {
- defaultMessage: 'Download and install the Java Runtime Environment',
- }),
- textPre: i18n.translate(
- 'home.tutorials.common.logstashInstructions.install.java.osxTextPre',
- {
- defaultMessage: 'Follow the installation instructions [here]({link}).',
- values: {
- link: 'https://docs.oracle.com/javase/8/docs/technotes/guides/install/mac_jre.html',
- },
- }
- ),
- },
- {
- title: i18n.translate(
- 'home.tutorials.common.logstashInstructions.install.logstash.osxTitle',
- {
- defaultMessage: 'Download and install Logstash',
- }
- ),
- textPre: i18n.translate(
- 'home.tutorials.common.logstashInstructions.install.logstash.osxTextPre',
- {
- defaultMessage: 'First time using Logstash? See the [Getting Started Guide]({link}).',
- values: {
- link:
- '{config.docs.base_url}guide/en/logstash/current/getting-started-with-logstash.html',
- },
- }
- ),
- commands: [
- 'curl -L -O https://artifacts.opensearch.org/downloads/logstash/logstash-{config.opensearchDashboards.version}.tar.gz',
- 'tar xzvf logstash-{config.opensearchDashboards.version}.tar.gz',
- ],
- },
- ],
- WINDOWS: [
- {
- title: i18n.translate(
- 'home.tutorials.common.logstashInstructions.install.java.windowsTitle',
- {
- defaultMessage: 'Download and install the Java Runtime Environment',
- }
- ),
- textPre: i18n.translate(
- 'home.tutorials.common.logstashInstructions.install.java.windowsTextPre',
- {
- defaultMessage: 'Follow the installation instructions [here]({link}).',
- values: {
- link:
- 'https://docs.oracle.com/javase/8/docs/technotes/guides/install/windows_jre_install.html',
- },
- }
- ),
- },
- {
- title: i18n.translate(
- 'home.tutorials.common.logstashInstructions.install.logstash.windowsTitle',
- {
- defaultMessage: 'Download and install Logstash',
- }
- ),
- textPre: i18n.translate(
- 'home.tutorials.common.logstashInstructions.install.logstash.windowsTextPre',
- {
- defaultMessage:
- 'First time using Logstash? See the [Getting Started Guide]({logstashLink}).\n\
- 1. [Download]({opensearchLink}) the Logstash Windows zip file.\n\
- 2. Extract the contents of the zip file.',
- values: {
- logstashLink:
- '{config.docs.base_url}guide/en/logstash/current/getting-started-with-logstash.html',
- opensearchLink:
- 'https://artifacts.opensearch.org/downloads/logstash/logstash-{config.opensearchDashboards.version}.zip',
- },
- }
- ),
- },
- ],
- },
-});
diff --git a/src/plugins/home/server/tutorials/instructions/metricbeat_instructions.ts b/src/plugins/home/server/tutorials/instructions/metricbeat_instructions.ts
deleted file mode 100644
index 9a14075eab75..000000000000
--- a/src/plugins/home/server/tutorials/instructions/metricbeat_instructions.ts
+++ /dev/null
@@ -1,447 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { INSTRUCTION_VARIANT } from '../../../common/instruction_variant';
-import { getSpaceIdForBeatsTutorial } from './get_space_id_for_beats_tutorial';
-import { TutorialContext } from '../../services/tutorials/lib/tutorials_registry_types';
-
-export const createMetricbeatInstructions = (context?: TutorialContext) => ({
- INSTALL: {
- OSX: {
- title: i18n.translate('home.tutorials.common.metricbeatInstructions.install.osxTitle', {
- defaultMessage: 'Download and install Metricbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.metricbeatInstructions.install.osxTextPre', {
- defaultMessage: 'First time using Metricbeat? See the [Quick Start]({link}).',
- values: {
- link: '{config.docs.beats.metricbeat}/metricbeat-installation-configuration.html',
- },
- }),
- commands: [
- 'curl -L -O https://artifacts.opensearch.org/downloads/beats/metricbeat/metricbeat-{config.opensearchDashboards.version}-darwin-x64.tar.gz',
- 'tar xzvf metricbeat-{config.opensearchDashboards.version}-darwin-x64.tar.gz',
- 'cd metricbeat-{config.opensearchDashboards.version}-darwin-x64/',
- ],
- },
- DEB: {
- title: i18n.translate('home.tutorials.common.metricbeatInstructions.install.debTitle', {
- defaultMessage: 'Download and install Metricbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.metricbeatInstructions.install.debTextPre', {
- defaultMessage: 'First time using Metricbeat? See the [Quick Start]({link}).',
- values: {
- link: '{config.docs.beats.metricbeat}/metricbeat-installation-configuration.html',
- },
- }),
- commands: [
- 'curl -L -O https://artifacts.opensearch.org/downloads/beats/metricbeat/metricbeat-{config.opensearchDashboards.version}-amd64.deb',
- 'sudo dpkg -i metricbeat-{config.opensearchDashboards.version}-amd64.deb',
- ],
- textPost: i18n.translate('home.tutorials.common.metricbeatInstructions.install.debTextPost', {
- defaultMessage: 'Looking for the 32-bit packages? See the [Download page]({link}).',
- values: { link: 'https://opensearch.org/docs/latest/downloads/beats/metricbeat' },
- }),
- },
- RPM: {
- title: i18n.translate('home.tutorials.common.metricbeatInstructions.install.rpmTitle', {
- defaultMessage: 'Download and install Metricbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.metricbeatInstructions.install.rpmTextPre', {
- defaultMessage: 'First time using Metricbeat? See the [Quick Start]({link}).',
- values: {
- link: '{config.docs.beats.metricbeat}/metricbeat-installation-configuration.html',
- },
- }),
- commands: [
- 'curl -L -O https://artifacts.opensearch.org/downloads/beats/metricbeat/metricbeat-{config.opensearchDashboards.version}-x64.rpm',
- 'sudo rpm -vi metricbeat-{config.opensearchDashboards.version}-x64.rpm',
- ],
- textPost: i18n.translate('home.tutorials.common.metricbeatInstructions.install.debTextPost', {
- defaultMessage: 'Looking for the 32-bit packages? See the [Download page]({link}).',
- values: { link: 'https://opensearch.org/docs/latest/downloads/beats/metricbeat' },
- }),
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.metricbeatInstructions.install.windowsTitle', {
- defaultMessage: 'Download and install Metricbeat',
- }),
- textPre: i18n.translate(
- 'home.tutorials.common.metricbeatInstructions.install.windowsTextPre',
- {
- defaultMessage:
- 'First time using Metricbeat? See the [Quick Start]({metricbeatLink}).\n\
- 1. Download the Metricbeat Windows zip file from the [Download]({opensearchLink}) page.\n\
- 2. Extract the contents of the zip file into {folderPath}.\n\
- 3. Rename the {directoryName} directory to `Metricbeat`.\n\
- 4. Open a PowerShell prompt as an Administrator (right-click the PowerShell icon and select \
-**Run As Administrator**). If you are running Windows XP, you might need to download and install PowerShell.\n\
- 5. From the PowerShell prompt, run the following commands to install Metricbeat as a Windows service.',
- values: {
- directoryName: '`metricbeat-{config.opensearchDashboards.version}-windows`',
- folderPath: '`C:\\Program Files`',
- metricbeatLink:
- '{config.docs.beats.metricbeat}/metricbeat-installation-configuration.html',
- opensearchLink: 'https://opensearch.org/docs/latest/downloads/beats/metricbeat',
- },
- }
- ),
- commands: ['cd "C:\\Program Files\\Metricbeat"', '.\\install-service-metricbeat.ps1'],
- textPost: i18n.translate(
- 'home.tutorials.common.metricbeatInstructions.install.windowsTextPost',
- {
- defaultMessage:
- 'Modify the settings under `output.opensearch` in the {path} file to point to your opensearch installation.',
- values: { path: '`C:\\Program Files\\Metricbeat\\metricbeat.yml`' },
- }
- ),
- },
- },
- START: {
- OSX: {
- title: i18n.translate('home.tutorials.common.metricbeatInstructions.start.osxTitle', {
- defaultMessage: 'Start Metricbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.metricbeatInstructions.start.osxTextPre', {
- defaultMessage:
- 'The `setup` command loads the OpenSearch Dashboards dashboards. If the dashboards are already set up, omit this command.',
- }),
- commands: ['./metricbeat setup', './metricbeat -e'],
- },
- DEB: {
- title: i18n.translate('home.tutorials.common.metricbeatInstructions.start.debTitle', {
- defaultMessage: 'Start Metricbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.metricbeatInstructions.start.debTextPre', {
- defaultMessage:
- 'The `setup` command loads the OpenSearch Dashboards dashboards. If the dashboards are already set up, omit this command.',
- }),
- commands: ['sudo metricbeat setup', 'sudo service metricbeat start'],
- },
- RPM: {
- title: i18n.translate('home.tutorials.common.metricbeatInstructions.start.rpmTitle', {
- defaultMessage: 'Start Metricbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.metricbeatInstructions.start.rpmTextPre', {
- defaultMessage:
- 'The `setup` command loads the OpenSearch Dashboards dashboards. If the dashboards are already set up, omit this command.',
- }),
- commands: ['sudo metricbeat setup', 'sudo service metricbeat start'],
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.metricbeatInstructions.start.windowsTitle', {
- defaultMessage: 'Start Metricbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.metricbeatInstructions.start.windowsTextPre', {
- defaultMessage:
- 'The `setup` command loads the OpenSearch Dashboards dashboards. If the dashboards are already set up, omit this command.',
- }),
- commands: ['.\\metricbeat.exe setup', 'Start-Service metricbeat'],
- },
- },
- CONFIG: {
- OSX: {
- title: i18n.translate('home.tutorials.common.metricbeatInstructions.config.osxTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate('home.tutorials.common.metricbeatInstructions.config.osxTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`metricbeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate('home.tutorials.common.metricbeatInstructions.config.osxTextPost', {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of opensearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }),
- },
- DEB: {
- title: i18n.translate('home.tutorials.common.metricbeatInstructions.config.debTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate('home.tutorials.common.metricbeatInstructions.config.debTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`/etc/metricbeat/metricbeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate('home.tutorials.common.metricbeatInstructions.config.debTextPost', {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of opensearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }),
- },
- RPM: {
- title: i18n.translate('home.tutorials.common.metricbeatInstructions.config.rpmTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate('home.tutorials.common.metricbeatInstructions.config.rpmTextPre', {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`/etc/metricbeat/metricbeat.yml`',
- },
- }),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate('home.tutorials.common.metricbeatInstructions.config.rpmTextPost', {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of opensearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }),
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.metricbeatInstructions.config.windowsTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate(
- 'home.tutorials.common.metricbeatInstructions.config.windowsTextPre',
- {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`C:\\Program Files\\Metricbeat\\metricbeat.yml`',
- },
- }
- ),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate(
- 'home.tutorials.common.metricbeatInstructions.config.windowsTextPost',
- {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of opensearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }
- ),
- },
- },
-});
-
-export function metricbeatEnableInstructions(moduleName: string) {
- return {
- OSX: {
- title: i18n.translate('home.tutorials.common.metricbeatEnableInstructions.osxTitle', {
- defaultMessage: 'Enable and configure the {moduleName} module',
- values: { moduleName },
- }),
- textPre: i18n.translate('home.tutorials.common.metricbeatEnableInstructions.osxTextPre', {
- defaultMessage: 'From the installation directory, run:',
- }),
- commands: ['./metricbeat modules enable ' + moduleName],
- textPost: i18n.translate('home.tutorials.common.metricbeatEnableInstructions.osxTextPost', {
- defaultMessage: 'Modify the settings in the `modules.d/{moduleName}.yml` file.',
- values: { moduleName },
- }),
- },
- DEB: {
- title: i18n.translate('home.tutorials.common.metricbeatEnableInstructions.debTitle', {
- defaultMessage: 'Enable and configure the {moduleName} module',
- values: { moduleName },
- }),
- commands: ['sudo metricbeat modules enable ' + moduleName],
- textPost: i18n.translate('home.tutorials.common.metricbeatEnableInstructions.debTextPost', {
- defaultMessage:
- 'Modify the settings in the `/etc/metricbeat/modules.d/{moduleName}.yml` file.',
- values: { moduleName },
- }),
- },
- RPM: {
- title: i18n.translate('home.tutorials.common.metricbeatEnableInstructions.rpmTitle', {
- defaultMessage: 'Enable and configure the {moduleName} module',
- values: { moduleName },
- }),
- commands: ['sudo metricbeat modules enable ' + moduleName],
- textPost: i18n.translate('home.tutorials.common.metricbeatEnableInstructions.rpmTextPost', {
- defaultMessage:
- 'Modify the settings in the `/etc/metricbeat/modules.d/{moduleName}.yml` file.',
- values: { moduleName },
- }),
- },
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.metricbeatEnableInstructions.windowsTitle', {
- defaultMessage: 'Enable and configure the {moduleName} module',
- values: { moduleName },
- }),
- textPre: i18n.translate('home.tutorials.common.metricbeatEnableInstructions.windowsTextPre', {
- defaultMessage: 'From the {path} folder, run:',
- values: { path: `C:\\Program Files\\Metricbeat` },
- }),
- commands: ['.\\metricbeat.exe modules enable ' + moduleName],
- textPost: i18n.translate(
- 'home.tutorials.common.metricbeatEnableInstructions.windowsTextPost',
- {
- defaultMessage: 'Modify the settings in the `modules.d/{moduleName}.yml` file.',
- values: { moduleName },
- }
- ),
- },
- };
-}
-
-export function metricbeatStatusCheck(moduleName: string) {
- return {
- title: i18n.translate('home.tutorials.common.metricbeatStatusCheck.title', {
- defaultMessage: 'Module status',
- }),
- text: i18n.translate('home.tutorials.common.metricbeatStatusCheck.text', {
- defaultMessage: 'Check that data is received from the Metricbeat `{moduleName}` module',
- values: { moduleName },
- }),
- btnLabel: i18n.translate('home.tutorials.common.metricbeatStatusCheck.buttonLabel', {
- defaultMessage: 'Check data',
- }),
- success: i18n.translate('home.tutorials.common.metricbeatStatusCheck.successText', {
- defaultMessage: 'Data successfully received from this module',
- }),
- error: i18n.translate('home.tutorials.common.metricbeatStatusCheck.errorText', {
- defaultMessage: 'No data has been received from this module yet',
- }),
- opensearchHitsCheck: {
- index: 'metricbeat-*',
- query: {
- bool: {
- filter: {
- term: {
- 'event.module': moduleName,
- },
- },
- },
- },
- },
- };
-}
-
-export function onPremInstructions(moduleName: string, context?: TutorialContext) {
- const METRICBEAT_INSTRUCTIONS = createMetricbeatInstructions(context);
-
- return {
- instructionSets: [
- {
- title: i18n.translate(
- 'home.tutorials.common.metricbeat.premInstructions.gettingStarted.title',
- {
- defaultMessage: 'Getting Started',
- }
- ),
- instructionVariants: [
- {
- id: INSTRUCTION_VARIANT.OSX,
- instructions: [
- METRICBEAT_INSTRUCTIONS.INSTALL.OSX,
- METRICBEAT_INSTRUCTIONS.CONFIG.OSX,
- metricbeatEnableInstructions(moduleName).OSX,
- METRICBEAT_INSTRUCTIONS.START.OSX,
- ],
- },
- {
- id: INSTRUCTION_VARIANT.DEB,
- instructions: [
- METRICBEAT_INSTRUCTIONS.INSTALL.DEB,
- METRICBEAT_INSTRUCTIONS.CONFIG.DEB,
- metricbeatEnableInstructions(moduleName).DEB,
- METRICBEAT_INSTRUCTIONS.START.DEB,
- ],
- },
- {
- id: INSTRUCTION_VARIANT.RPM,
- instructions: [
- METRICBEAT_INSTRUCTIONS.INSTALL.RPM,
- METRICBEAT_INSTRUCTIONS.CONFIG.RPM,
- metricbeatEnableInstructions(moduleName).RPM,
- METRICBEAT_INSTRUCTIONS.START.RPM,
- ],
- },
- {
- id: INSTRUCTION_VARIANT.WINDOWS,
- instructions: [
- METRICBEAT_INSTRUCTIONS.INSTALL.WINDOWS,
- METRICBEAT_INSTRUCTIONS.CONFIG.WINDOWS,
- metricbeatEnableInstructions(moduleName).WINDOWS,
- METRICBEAT_INSTRUCTIONS.START.WINDOWS,
- ],
- },
- ],
- statusCheck: metricbeatStatusCheck(moduleName),
- },
- ],
- };
-}
diff --git a/src/plugins/home/server/tutorials/instructions/param_types.ts b/src/plugins/home/server/tutorials/instructions/param_types.ts
deleted file mode 100644
index f5c04d8e6490..000000000000
--- a/src/plugins/home/server/tutorials/instructions/param_types.ts
+++ /dev/null
@@ -1,34 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-export const PARAM_TYPES = {
- NUMBER: 'number',
- STRING: 'string',
-};
diff --git a/src/plugins/home/server/tutorials/instructions/winlogbeat_instructions.ts b/src/plugins/home/server/tutorials/instructions/winlogbeat_instructions.ts
deleted file mode 100644
index 099750e7aa42..000000000000
--- a/src/plugins/home/server/tutorials/instructions/winlogbeat_instructions.ts
+++ /dev/null
@@ -1,183 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { INSTRUCTION_VARIANT } from '../../../common/instruction_variant';
-import { getSpaceIdForBeatsTutorial } from './get_space_id_for_beats_tutorial';
-import { TutorialContext } from '../../services/tutorials/lib/tutorials_registry_types';
-
-export const createWinlogbeatInstructions = (context?: TutorialContext) => ({
- INSTALL: {
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.winlogbeatInstructions.install.windowsTitle', {
- defaultMessage: 'Download and install Winlogbeat',
- }),
- textPre: i18n.translate(
- 'home.tutorials.common.winlogbeatInstructions.install.windowsTextPre',
- {
- defaultMessage:
- 'First time using Winlogbeat? See the [Quick Start]({winlogbeatLink}).\n\
- 1. Download the Winlogbeat Windows zip file from the [Download]({opensearchLink}) page.\n\
- 2. Extract the contents of the zip file into {folderPath}.\n\
- 3. Rename the {directoryName} directory to `Winlogbeat`.\n\
- 4. Open a PowerShell prompt as an Administrator (right-click the PowerShell icon and select \
-**Run As Administrator**). If you are running Windows XP, you might need to download and install PowerShell.\n\
- 5. From the PowerShell prompt, run the following commands to install Winlogbeat as a Windows service.',
- values: {
- directoryName: '`winlogbeat-{config.opensearchDashboards.version}-windows`',
- folderPath: '`C:\\Program Files`',
- winlogbeatLink:
- '{config.docs.beats.winlogbeat}/winlogbeat-installation-configuration.html',
- opensearchLink: 'https://opensearch.org/downloads/beats/winlogbeat',
- },
- }
- ),
- commands: ['cd "C:\\Program Files\\Winlogbeat"', '.\\install-service-winlogbeat.ps1'],
- textPost: i18n.translate(
- 'home.tutorials.common.winlogbeatInstructions.install.windowsTextPost',
- {
- defaultMessage:
- 'Modify the settings under `output.opensearch` in the {path} file to point to your opensearch installation.',
- values: { path: '`C:\\Program Files\\Winlogbeat\\winlogbeat.yml`' },
- }
- ),
- },
- },
- START: {
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.winlogbeatInstructions.start.windowsTitle', {
- defaultMessage: 'Start Winlogbeat',
- }),
- textPre: i18n.translate('home.tutorials.common.winlogbeatInstructions.start.windowsTextPre', {
- defaultMessage:
- 'The `setup` command loads the OpenSearch Dashboards dashboards. If the dashboards are already set up, omit this command.',
- }),
- commands: ['.\\winlogbeat.exe setup', 'Start-Service winlogbeat'],
- },
- },
- CONFIG: {
- WINDOWS: {
- title: i18n.translate('home.tutorials.common.winlogbeatInstructions.config.windowsTitle', {
- defaultMessage: 'Edit the configuration',
- }),
- textPre: i18n.translate(
- 'home.tutorials.common.winlogbeatInstructions.config.windowsTextPre',
- {
- defaultMessage: 'Modify {path} to set the connection information:',
- values: {
- path: '`C:\\Program Files\\Winlogbeat\\winlogbeat.yml`',
- },
- }
- ),
- commands: [
- 'output.opensearch:',
- ' hosts: [""]',
- ' username: "opensearch"',
- ' password: ""',
- 'setup.opensearchDashboards:',
- ' host: ""',
- getSpaceIdForBeatsTutorial(context),
- ],
- textPost: i18n.translate(
- 'home.tutorials.common.winlogbeatInstructions.config.windowsTextPost',
- {
- defaultMessage:
- 'Where {passwordTemplate} is the password of the `opensearch` user, {opensearchUrlTemplate} is the URL of opensearch, \
-and {opensearchDashboardsUrlTemplate} is the URL of OpenSearch Dashboards.',
- values: {
- passwordTemplate: '``',
- opensearchUrlTemplate: '``',
- opensearchDashboardsUrlTemplate: '``',
- },
- }
- ),
- },
- },
-});
-
-export function winlogbeatStatusCheck() {
- return {
- title: i18n.translate('home.tutorials.common.winlogbeatStatusCheck.title', {
- defaultMessage: 'Module status',
- }),
- text: i18n.translate('home.tutorials.common.winlogbeatStatusCheck.text', {
- defaultMessage: 'Check that data is received from Winlogbeat',
- }),
- btnLabel: i18n.translate('home.tutorials.common.winlogbeatStatusCheck.buttonLabel', {
- defaultMessage: 'Check data',
- }),
- success: i18n.translate('home.tutorials.common.winlogbeatStatusCheck.successText', {
- defaultMessage: 'Data successfully received',
- }),
- error: i18n.translate('home.tutorials.common.winlogbeatStatusCheck.errorText', {
- defaultMessage: 'No data has been received yet',
- }),
- opensearchHitsCheck: {
- index: 'winlogbeat-*',
- query: {
- bool: {
- filter: {
- term: {
- 'agent.type': 'winlogbeat',
- },
- },
- },
- },
- },
- };
-}
-
-export function onPremInstructions(context?: TutorialContext) {
- const WINLOGBEAT_INSTRUCTIONS = createWinlogbeatInstructions(context);
-
- return {
- instructionSets: [
- {
- title: i18n.translate(
- 'home.tutorials.common.winlogbeat.premInstructions.gettingStarted.title',
- {
- defaultMessage: 'Getting Started',
- }
- ),
- instructionVariants: [
- {
- id: INSTRUCTION_VARIANT.WINDOWS,
- instructions: [
- WINLOGBEAT_INSTRUCTIONS.INSTALL.WINDOWS,
- WINLOGBEAT_INSTRUCTIONS.CONFIG.WINDOWS,
- WINLOGBEAT_INSTRUCTIONS.START.WINDOWS,
- ],
- },
- ],
- statusCheck: winlogbeatStatusCheck(),
- },
- ],
- };
-}
diff --git a/src/plugins/home/server/tutorials/iptables_logs/index.ts b/src/plugins/home/server/tutorials/iptables_logs/index.ts
deleted file mode 100644
index 8eadda84411f..000000000000
--- a/src/plugins/home/server/tutorials/iptables_logs/index.ts
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function iptablesLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'iptables';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'iptablesLogs',
- name: i18n.translate('home.tutorials.iptablesLogs.nameTitle', {
- defaultMessage: 'Iptables logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.iptablesLogs.shortDescription', {
- defaultMessage: 'Collect iptables and ip6tables logs.',
- }),
- longDescription: i18n.translate('home.tutorials.iptablesLogs.longDescription', {
- defaultMessage:
- 'This is a module for iptables and ip6tables logs. It parses logs received \
- over the network via syslog or from a file. Also, it understands the prefix \
- added by some Ubiquiti firewalls, which includes the rule set name, rule \
- number and the action performed on the traffic (allow/deny). \
- [Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-iptables.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/linux.svg',
- artifacts: {
- dashboards: [
- {
- id: 'ceefb9e0-1f51-11e9-93ed-f7e068f4aebb-ecs',
- linkLabel: i18n.translate('home.tutorials.iptablesLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Iptables Overview',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-iptables.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/juniper_logs/index.ts b/src/plugins/home/server/tutorials/juniper_logs/index.ts
deleted file mode 100644
index 8c0b2a0a73b9..000000000000
--- a/src/plugins/home/server/tutorials/juniper_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function juniperLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'juniper';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'juniperLogs',
- name: i18n.translate('home.tutorials.juniperLogs.nameTitle', {
- defaultMessage: 'Juniper Logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.juniperLogs.shortDescription', {
- defaultMessage: 'Collect Juniper JUNOS logs over syslog or from a file.',
- }),
- longDescription: i18n.translate('home.tutorials.juniperLogs.longDescription', {
- defaultMessage:
- 'This is a module for receiving Juniper JUNOS logs over Syslog or a file. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-juniper.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/juniper.svg',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.juniperLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-juniper.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/kafka_logs/index.ts b/src/plugins/home/server/tutorials/kafka_logs/index.ts
deleted file mode 100644
index fb5a71c7d172..000000000000
--- a/src/plugins/home/server/tutorials/kafka_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function kafkaLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'kafka';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'kafkaLogs',
- name: i18n.translate('home.tutorials.kafkaLogs.nameTitle', {
- defaultMessage: 'Kafka logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.kafkaLogs.shortDescription', {
- defaultMessage: 'Collect and parse logs created by Kafka.',
- }),
- longDescription: i18n.translate('home.tutorials.kafkaLogs.longDescription', {
- 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-ecs',
- linkLabel: i18n.translate('home.tutorials.kafkaLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Kafka logs dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-kafka.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/kafka_metrics/index.ts b/src/plugins/home/server/tutorials/kafka_metrics/index.ts
deleted file mode 100644
index f9c8cc3a9b71..000000000000
--- a/src/plugins/home/server/tutorials/kafka_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function kafkaMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'kafka';
- return {
- id: 'kafkaMetrics',
- name: i18n.translate('home.tutorials.kafkaMetrics.nameTitle', {
- defaultMessage: 'Kafka metrics',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.kafkaMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from the Kafka server.',
- }),
- longDescription: i18n.translate('home.tutorials.kafkaMetrics.longDescription', {
- defaultMessage:
- 'The `kafka` Metricbeat module fetches internal metrics from Kafka. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-kafka.html',
- },
- }),
- euiIconType: 'logoKafka',
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.kafkaMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-kafka.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/kubernetes_metrics/index.ts b/src/plugins/home/server/tutorials/kubernetes_metrics/index.ts
deleted file mode 100644
index afb884a40bdf..000000000000
--- a/src/plugins/home/server/tutorials/kubernetes_metrics/index.ts
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function kubernetesMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'kubernetes';
- return {
- id: 'kubernetesMetrics',
- name: i18n.translate('home.tutorials.kubernetesMetrics.nameTitle', {
- defaultMessage: 'Kubernetes metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.kubernetesMetrics.shortDescription', {
- defaultMessage: 'Fetch metrics from your Kubernetes installation.',
- }),
- longDescription: i18n.translate('home.tutorials.kubernetesMetrics.longDescription', {
- 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-ecs',
- linkLabel: i18n.translate(
- 'home.tutorials.kubernetesMetrics.artifacts.dashboards.linkLabel',
- {
- defaultMessage: 'Kubernetes metrics dashboard',
- }
- ),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-kubernetes.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/logstash_logs/index.ts b/src/plugins/home/server/tutorials/logstash_logs/index.ts
deleted file mode 100644
index e6124122b4b5..000000000000
--- a/src/plugins/home/server/tutorials/logstash_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function logstashLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'logstash';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'logstashLogs',
- name: i18n.translate('home.tutorials.logstashLogs.nameTitle', {
- defaultMessage: 'Logstash logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.logstashLogs.shortDescription', {
- defaultMessage: 'Collect Logstash main and slow logs.',
- }),
- longDescription: i18n.translate('home.tutorials.logstashLogs.longDescription', {
- defaultMessage:
- 'The modules parse Logstash regular logs and the slow log, it will support the plain text format and the JSON format. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-logstash.html',
- },
- }),
- euiIconType: 'logoLogstash',
- artifacts: {
- dashboards: [
- {
- id: 'Filebeat-Logstash-Log-Dashboard-ecs',
- linkLabel: i18n.translate('home.tutorials.logstashLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Logstash Logs',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-logstash.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/logstash_metrics/index.ts b/src/plugins/home/server/tutorials/logstash_metrics/index.ts
deleted file mode 100644
index 1a0f11ada0d3..000000000000
--- a/src/plugins/home/server/tutorials/logstash_metrics/index.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function logstashMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'logstash';
- return {
- id: moduleName + 'Metrics',
- name: i18n.translate('home.tutorials.logstashMetrics.nameTitle', {
- defaultMessage: 'Logstash metrics',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.logstashMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from a Logstash server.',
- }),
- longDescription: i18n.translate('home.tutorials.logstashMetrics.longDescription', {
- 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: i18n.translate('home.tutorials.logstashMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-' + moduleName + '.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/memcached_metrics/index.ts b/src/plugins/home/server/tutorials/memcached_metrics/index.ts
deleted file mode 100644
index ad4dc9f7eb63..000000000000
--- a/src/plugins/home/server/tutorials/memcached_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function memcachedMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'memcached';
- return {
- id: 'memcachedMetrics',
- name: i18n.translate('home.tutorials.memcachedMetrics.nameTitle', {
- defaultMessage: 'Memcached metrics',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.memcachedMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from the Memcached server.',
- }),
- longDescription: i18n.translate('home.tutorials.memcachedMetrics.longDescription', {
- defaultMessage:
- 'The `memcached` Metricbeat module fetches internal metrics from Memcached. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-memcached.html',
- },
- }),
- euiIconType: 'logoMemcached',
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.memcachedMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-memcached.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/microsoft_logs/index.ts b/src/plugins/home/server/tutorials/microsoft_logs/index.ts
deleted file mode 100644
index 8f8c391ff445..000000000000
--- a/src/plugins/home/server/tutorials/microsoft_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function microsoftLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'microsoft';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'microsoftLogs',
- name: i18n.translate('home.tutorials.microsoftLogs.nameTitle', {
- defaultMessage: 'Microsoft Defender ATP logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.microsoftLogs.shortDescription', {
- defaultMessage: 'Collect Microsoft Defender ATP alerts.',
- }),
- longDescription: i18n.translate('home.tutorials.microsoftLogs.longDescription', {
- defaultMessage:
- 'Collect Microsoft Defender ATP alerts for use with OpenSearch Security. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-microsoft.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/microsoft.svg',
- artifacts: {
- dashboards: [
- {
- id: '65402c30-ca6a-11ea-9d4d-9737a63aaa55',
- linkLabel: i18n.translate('home.tutorials.microsoftLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Microsoft ATP Overview',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-microsoft.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/misp_logs/index.ts b/src/plugins/home/server/tutorials/misp_logs/index.ts
deleted file mode 100644
index 55e73c17a725..000000000000
--- a/src/plugins/home/server/tutorials/misp_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function mispLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'misp';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'mispLogs',
- name: i18n.translate('home.tutorials.mispLogs.nameTitle', {
- defaultMessage: 'MISP threat intel logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.mispLogs.shortDescription', {
- defaultMessage: 'Collect MISP threat intelligence data with Filebeat.',
- }),
- longDescription: i18n.translate('home.tutorials.mispLogs.longDescription', {
- defaultMessage:
- 'This is a filebeat module for reading threat intel information from the MISP platform ( https://www.circl.lu/doc/misp/). It uses the httpjson input to access the MISP REST API interface. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-misp.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/misp.svg',
- artifacts: {
- dashboards: [
- {
- id: 'c6cac9e0-f105-11e9-9a88-690b10c8ee99',
- linkLabel: i18n.translate('home.tutorials.mispLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'MISP Overview',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-misp.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/mongodb_logs/index.ts b/src/plugins/home/server/tutorials/mongodb_logs/index.ts
deleted file mode 100644
index 3d5c31e5b4b5..000000000000
--- a/src/plugins/home/server/tutorials/mongodb_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function mongodbLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'mongodb';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'mongodbLogs',
- name: i18n.translate('home.tutorials.mongodbLogs.nameTitle', {
- defaultMessage: 'MongoDB logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.mongodbLogs.shortDescription', {
- defaultMessage: 'Collect MongoDB logs.',
- }),
- longDescription: i18n.translate('home.tutorials.mongodbLogs.longDescription', {
- defaultMessage:
- 'The module collects and parses logs created by [MongoDB](https://www.mongodb.com/). \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-mongodb.html',
- },
- }),
- euiIconType: 'logoMongodb',
- artifacts: {
- dashboards: [
- {
- id: 'abcf35b0-0a82-11e8-bffe-ff7d4f68cf94-ecs',
- linkLabel: i18n.translate('home.tutorials.mongodbLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'MongoDB Overview',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-mongodb.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/mongodb_metrics/index.ts b/src/plugins/home/server/tutorials/mongodb_metrics/index.ts
deleted file mode 100644
index d37ea911cb7e..000000000000
--- a/src/plugins/home/server/tutorials/mongodb_metrics/index.ts
+++ /dev/null
@@ -1,80 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function mongodbMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'mongodb';
- return {
- id: 'mongodbMetrics',
- name: i18n.translate('home.tutorials.mongodbMetrics.nameTitle', {
- defaultMessage: 'MongoDB metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.mongodbMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from MongoDB.',
- }),
- longDescription: i18n.translate('home.tutorials.mongodbMetrics.longDescription', {
- defaultMessage:
- 'The `mongodb` Metricbeat module fetches internal metrics from the MongoDB server. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-mongodb.html',
- },
- }),
- euiIconType: 'logoMongodb',
- artifacts: {
- dashboards: [
- {
- id: 'Metricbeat-MongoDB-ecs',
- linkLabel: i18n.translate(
- 'home.tutorials.mongodbMetrics.artifacts.dashboards.linkLabel',
- {
- defaultMessage: 'MongoDB metrics dashboard',
- }
- ),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-mongodb.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/mssql_logs/index.ts b/src/plugins/home/server/tutorials/mssql_logs/index.ts
deleted file mode 100644
index 891a8fb6764b..000000000000
--- a/src/plugins/home/server/tutorials/mssql_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function mssqlLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'mssql';
- const platforms = ['DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'mssqlLogs',
- name: i18n.translate('home.tutorials.mssqlLogs.nameTitle', {
- defaultMessage: 'MSSQL logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.mssqlLogs.shortDescription', {
- defaultMessage: 'Collect MSSQL logs.',
- }),
- longDescription: i18n.translate('home.tutorials.mssqlLogs.longDescription', {
- defaultMessage:
- 'The module parses error logs created by MSSQL. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-mssql.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/microsoft.svg',
- artifacts: {
- dashboards: [],
- application: {
- label: i18n.translate('home.tutorials.mssqlLogs.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-mssql.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/mssql_metrics/index.ts b/src/plugins/home/server/tutorials/mssql_metrics/index.ts
deleted file mode 100644
index 4709cc765ab3..000000000000
--- a/src/plugins/home/server/tutorials/mssql_metrics/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function mssqlMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'mssql';
- return {
- id: 'mssqlMetrics',
- name: i18n.translate('home.tutorials.mssqlMetrics.nameTitle', {
- defaultMessage: 'Microsoft SQL Server Metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.mssqlMetrics.shortDescription', {
- defaultMessage: 'Fetch monitoring metrics from a Microsoft SQL Server instance',
- }),
- longDescription: i18n.translate('home.tutorials.mssqlMetrics.longDescription', {
- defaultMessage:
- 'The `mssql` Metricbeat module fetches monitoring, log and performance metrics from a Microsoft SQL Server instance. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-mssql.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/mssql.svg',
- isBeta: false,
- artifacts: {
- dashboards: [
- {
- id: 'a2ead240-18bb-11e9-9836-f37dedd3b411-ecs',
- linkLabel: i18n.translate('home.tutorials.mssqlMetrics.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Microsoft SQL Server metrics dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-mssql.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/munin_metrics/index.ts b/src/plugins/home/server/tutorials/munin_metrics/index.ts
deleted file mode 100644
index e46941abf2f3..000000000000
--- a/src/plugins/home/server/tutorials/munin_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function muninMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'munin';
- return {
- id: 'muninMetrics',
- name: i18n.translate('home.tutorials.muninMetrics.nameTitle', {
- defaultMessage: 'Munin metrics',
- }),
- moduleName,
- euiIconType: '/plugins/home/assets/tutorials/logos/munin.svg',
- isBeta: true,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.muninMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from the Munin server.',
- }),
- longDescription: i18n.translate('home.tutorials.muninMetrics.longDescription', {
- defaultMessage:
- 'The `munin` Metricbeat module fetches internal metrics from Munin. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-munin.html',
- },
- }),
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.muninMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-munin.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/mysql_logs/index.ts b/src/plugins/home/server/tutorials/mysql_logs/index.ts
deleted file mode 100644
index b0f5ab1af118..000000000000
--- a/src/plugins/home/server/tutorials/mysql_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function mysqlLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'mysql';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'mysqlLogs',
- name: i18n.translate('home.tutorials.mysqlLogs.nameTitle', {
- defaultMessage: 'MySQL logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.mysqlLogs.shortDescription', {
- defaultMessage: 'Collect and parse error and slow logs created by MySQL.',
- }),
- longDescription: i18n.translate('home.tutorials.mysqlLogs.longDescription', {
- defaultMessage:
- 'The `mysql` Filebeat module parses error and slow logs created by MySQL. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-mysql.html',
- },
- }),
- euiIconType: 'logoMySQL',
- artifacts: {
- dashboards: [
- {
- id: 'Filebeat-MySQL-Dashboard-ecs',
- linkLabel: i18n.translate('home.tutorials.mysqlLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'MySQL logs dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-mysql.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/mysql_metrics/index.ts b/src/plugins/home/server/tutorials/mysql_metrics/index.ts
deleted file mode 100644
index 1a4e958cd422..000000000000
--- a/src/plugins/home/server/tutorials/mysql_metrics/index.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function mysqlMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'mysql';
- return {
- id: 'mysqlMetrics',
- name: i18n.translate('home.tutorials.mysqlMetrics.nameTitle', {
- defaultMessage: 'MySQL metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.mysqlMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from MySQL.',
- }),
- longDescription: i18n.translate('home.tutorials.mysqlMetrics.longDescription', {
- defaultMessage:
- 'The `mysql` Metricbeat module fetches internal metrics from the MySQL server. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-mysql.html',
- },
- }),
- euiIconType: 'logoMySQL',
- artifacts: {
- dashboards: [
- {
- id: '66881e90-0006-11e7-bf7f-c9acc3d3e306-ecs',
- linkLabel: i18n.translate('home.tutorials.mysqlMetrics.artifacts.dashboards.linkLabel', {
- defaultMessage: 'MySQL metrics dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-mysql.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/nats_logs/index.ts b/src/plugins/home/server/tutorials/nats_logs/index.ts
deleted file mode 100644
index 16294ff657ba..000000000000
--- a/src/plugins/home/server/tutorials/nats_logs/index.ts
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function natsLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'nats';
- const platforms = ['DEB', 'RPM'] as const;
- return {
- id: 'natsLogs',
- name: i18n.translate('home.tutorials.natsLogs.nameTitle', {
- defaultMessage: 'NATS logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- isBeta: true,
- shortDescription: i18n.translate('home.tutorials.natsLogs.shortDescription', {
- defaultMessage: 'Collect and parse logs created by Nats.',
- }),
- longDescription: i18n.translate('home.tutorials.natsLogs.longDescription', {
- defaultMessage:
- 'The `nats` Filebeat module parses logs created by Nats. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-nats.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/nats.svg',
- artifacts: {
- dashboards: [
- {
- id: 'Filebeat-nats-overview-ecs',
- linkLabel: i18n.translate('home.tutorials.natsLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'NATS logs dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-nats.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/nats_metrics/index.ts b/src/plugins/home/server/tutorials/nats_metrics/index.ts
deleted file mode 100644
index 8f3fcac03259..000000000000
--- a/src/plugins/home/server/tutorials/nats_metrics/index.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function natsMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'nats';
- return {
- id: 'natsMetrics',
- name: i18n.translate('home.tutorials.natsMetrics.nameTitle', {
- defaultMessage: 'NATS metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.natsMetrics.shortDescription', {
- defaultMessage: 'Fetch monitoring metrics from the Nats server.',
- }),
- longDescription: i18n.translate('home.tutorials.natsMetrics.longDescription', {
- defaultMessage:
- 'The `nats` Metricbeat module fetches monitoring metrics from Nats. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-nats.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/nats.svg',
- artifacts: {
- dashboards: [
- {
- id: 'Metricbeat-Nats-Dashboard-ecs',
- linkLabel: i18n.translate('home.tutorials.natsMetrics.artifacts.dashboards.linkLabel', {
- defaultMessage: 'NATS metrics dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-nats.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/netflow_logs/index.ts b/src/plugins/home/server/tutorials/netflow_logs/index.ts
deleted file mode 100644
index d49ce65aeedc..000000000000
--- a/src/plugins/home/server/tutorials/netflow_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function netflowLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'netflow';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'netflowLogs',
- name: i18n.translate('home.tutorials.netflowLogs.nameTitle', {
- defaultMessage: 'NetFlow / IPFIX Collector',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.netflowLogs.shortDescription', {
- defaultMessage: 'Collect NetFlow and IPFIX flow records.',
- }),
- longDescription: i18n.translate('home.tutorials.netflowLogs.longDescription', {
- defaultMessage:
- 'This is a module for receiving NetFlow and IPFIX flow records over UDP. This input supports NetFlow versions 1, 5, 6, 7, 8 and 9, as well as IPFIX. For NetFlow versions older than 9, fields are mapped automatically to NetFlow v9. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-netflow.html',
- },
- }),
- euiIconType: 'logoBeats',
- artifacts: {
- dashboards: [
- {
- id: '34e26884-161a-4448-9556-43b5bf2f62a2',
- linkLabel: i18n.translate('home.tutorials.netflowLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Netflow Overview',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-netflow.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/netscout_logs/index.ts b/src/plugins/home/server/tutorials/netscout_logs/index.ts
deleted file mode 100644
index 8315ea87506b..000000000000
--- a/src/plugins/home/server/tutorials/netscout_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function netscoutLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'netscout';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'netscoutLogs',
- name: i18n.translate('home.tutorials.netscoutLogs.nameTitle', {
- defaultMessage: 'Arbor Peakflow logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.netscoutLogs.shortDescription', {
- defaultMessage: 'Collect Netscout Arbor Peakflow SP logs over syslog or from a file.',
- }),
- longDescription: i18n.translate('home.tutorials.netscoutLogs.longDescription', {
- defaultMessage:
- 'This is a module for receiving Arbor Peakflow SP logs over Syslog or a file. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-netscout.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/netscout.svg',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.netscoutLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-netscout.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/nginx_logs/index.ts b/src/plugins/home/server/tutorials/nginx_logs/index.ts
deleted file mode 100644
index d1c7e08a7fc8..000000000000
--- a/src/plugins/home/server/tutorials/nginx_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function nginxLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'nginx';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'nginxLogs',
- name: i18n.translate('home.tutorials.nginxLogs.nameTitle', {
- defaultMessage: 'Nginx logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.nginxLogs.shortDescription', {
- defaultMessage: 'Collect and parse access and error logs created by the Nginx HTTP server.',
- }),
- longDescription: i18n.translate('home.tutorials.nginxLogs.longDescription', {
- defaultMessage:
- 'The `nginx` Filebeat module parses access and error logs created by the Nginx HTTP server. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-nginx.html',
- },
- }),
- euiIconType: 'logoNginx',
- artifacts: {
- dashboards: [
- {
- id: '55a9e6e0-a29e-11e7-928f-5dbe6f6f5519-ecs',
- linkLabel: i18n.translate('home.tutorials.nginxLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Nginx logs dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-nginx.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/nginx_metrics/index.ts b/src/plugins/home/server/tutorials/nginx_metrics/index.ts
deleted file mode 100644
index c9ce79c469ae..000000000000
--- a/src/plugins/home/server/tutorials/nginx_metrics/index.ts
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function nginxMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'nginx';
- return {
- id: 'nginxMetrics',
- name: i18n.translate('home.tutorials.nginxMetrics.nameTitle', {
- defaultMessage: 'Nginx metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.nginxMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from the Nginx HTTP server.',
- }),
- longDescription: i18n.translate('home.tutorials.nginxMetrics.longDescription', {
- defaultMessage:
- 'The `nginx` Metricbeat module fetches internal metrics from the Nginx HTTP server. \
-The module scrapes the server status data from the web page generated by the \
-{statusModuleLink}, \
-which must be enabled in your Nginx installation. \
-[Learn more]({learnMoreLink}).',
- values: {
- statusModuleLink:
- '[ngx_http_stub_status_module](http://nginx.org/en/docs/http/ngx_http_stub_status_module.html)',
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-nginx.html',
- },
- }),
- euiIconType: 'logoNginx',
- artifacts: {
- dashboards: [
- {
- id: '023d2930-f1a5-11e7-a9ef-93c69af7b129-ecs',
- linkLabel: i18n.translate('home.tutorials.nginxMetrics.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Nginx metrics dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-nginx.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/o365_logs/index.ts b/src/plugins/home/server/tutorials/o365_logs/index.ts
deleted file mode 100644
index a9c67b2049af..000000000000
--- a/src/plugins/home/server/tutorials/o365_logs/index.ts
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function o365LogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'o365';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'o365Logs',
- name: i18n.translate('home.tutorials.o365Logs.nameTitle', {
- defaultMessage: 'Office 365 logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.o365Logs.shortDescription', {
- defaultMessage: 'Collect Office 365 activity logs via the Office 365 API.',
- }),
- longDescription: i18n.translate('home.tutorials.o365Logs.longDescription', {
- defaultMessage:
- 'This is a module for Office 365 logs received via one of the Office 365 \
- API endpoints. It currently supports user, admin, system, and policy \
- actions and events from Office 365 and Azure AD activity logs exposed \
- by the Office 365 Management Activity API. \
- [Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-o365.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/o365.svg',
- artifacts: {
- dashboards: [
- {
- id: '712e2c00-685d-11ea-8d6a-292ef5d68366',
- linkLabel: i18n.translate('home.tutorials.o365Logs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'O365 Audit Dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-o365.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/okta_logs/index.ts b/src/plugins/home/server/tutorials/okta_logs/index.ts
deleted file mode 100644
index 9ce6bc0802a8..000000000000
--- a/src/plugins/home/server/tutorials/okta_logs/index.ts
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function oktaLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'okta';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'oktaLogs',
- name: i18n.translate('home.tutorials.oktaLogs.nameTitle', {
- defaultMessage: 'Okta logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.oktaLogs.shortDescription', {
- defaultMessage: 'Collect the Okta system log via the Okta API.',
- }),
- longDescription: i18n.translate('home.tutorials.oktaLogs.longDescription', {
- defaultMessage:
- 'The Okta module collects events from the [Okta API](https://developer.okta.com/docs/reference/). \
- Specifically this supports reading from the [Okta System Log API](https://developer.okta.com/docs/reference/api/system-log/). \
- [Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-okta.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/okta.svg',
- artifacts: {
- dashboards: [
- {
- id: '749203a0-67b1-11ea-a76f-bf44814e437d',
- linkLabel: i18n.translate('home.tutorials.oktaLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Okta Overview',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-okta.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/openmetrics_metrics/index.ts b/src/plugins/home/server/tutorials/openmetrics_metrics/index.ts
deleted file mode 100644
index d7bf0bdbd60c..000000000000
--- a/src/plugins/home/server/tutorials/openmetrics_metrics/index.ts
+++ /dev/null
@@ -1,69 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function openmetricsMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'openmetrics';
- return {
- id: 'openmetricsMetrics',
- name: i18n.translate('home.tutorials.openmetricsMetrics.nameTitle', {
- defaultMessage: 'OpenMetrics metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.openmetricsMetrics.shortDescription', {
- defaultMessage: 'Fetch metrics from an endpoint that serves metrics in OpenMetrics format.',
- }),
- longDescription: i18n.translate('home.tutorials.openmetricsMetrics.longDescription', {
- defaultMessage:
- 'The `openmetrics` Metricbeat module fetches metrics from an endpoint that serves metrics in OpenMetrics format. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-openmetrics.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/openmetrics.svg',
- artifacts: {
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-openmetrics.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/opensearch_dashboards_logs/index.ts b/src/plugins/home/server/tutorials/opensearch_dashboards_logs/index.ts
deleted file mode 100644
index 7de5253c7f33..000000000000
--- a/src/plugins/home/server/tutorials/opensearch_dashboards_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function opensearchDashboardsLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'opensearchDashboards';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'opensearchDashboardsLogs',
- name: i18n.translate('home.tutorials.opensearchDashboardsLogs.nameTitle', {
- defaultMessage: 'OpenSearch Dashboards Logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.opensearchDashboardsLogs.shortDescription', {
- defaultMessage: 'Collect OpenSearch Dashboards logs.',
- }),
- longDescription: i18n.translate('home.tutorials.opensearchDashboardsLogs.longDescription', {
- defaultMessage: 'This is the OpenSearch Dashboards module. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-opensearch-dashboards.html',
- },
- }),
- euiIconType: 'inputOutput',
- artifacts: {
- dashboards: [],
- application: {
- label: i18n.translate(
- 'home.tutorials.opensearchDashboardsLogs.artifacts.application.label',
- {
- defaultMessage: 'Discover',
- }
- ),
- path: '/app/discover#/',
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-opensearch-dashboards.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/opensearch_dashboards_metrics/index.ts b/src/plugins/home/server/tutorials/opensearch_dashboards_metrics/index.ts
deleted file mode 100644
index 7eaec9b72a99..000000000000
--- a/src/plugins/home/server/tutorials/opensearch_dashboards_metrics/index.ts
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function opensearchDashboardsMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'opensearchDashboards';
- return {
- id: 'opensearchDashboardsMetrics',
- name: i18n.translate('home.tutorials.opensearchDashboardsMetrics.nameTitle', {
- defaultMessage: 'OpenSearch Dashboards metrics',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate(
- 'home.tutorials.opensearchDashboardsMetrics.shortDescription',
- {
- defaultMessage: 'Fetch internal metrics from OpenSearch Dashboards.',
- }
- ),
- longDescription: i18n.translate('home.tutorials.opensearchDashboardsMetrics.longDescription', {
- defaultMessage:
- 'The `OpenSearch Dashboards` Metricbeat module fetches internal metrics from OpenSearch Dashboards. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink:
- '{config.docs.beats.metricbeat}/metricbeat-module-opensearch-dashboards.html',
- },
- }),
- euiIconType: 'inputOutput',
- artifacts: {
- application: {
- label: i18n.translate(
- 'home.tutorials.opensearchDashboardsMetrics.artifacts.application.label',
- {
- defaultMessage: 'Discover',
- }
- ),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl:
- '{config.docs.beats.metricbeat}/exported-fields-opensearch-dashboards.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/opensearch_logs/index.ts b/src/plugins/home/server/tutorials/opensearch_logs/index.ts
deleted file mode 100644
index 86f8caebd0ac..000000000000
--- a/src/plugins/home/server/tutorials/opensearch_logs/index.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function opensearchLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'opensearch';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'opensearchLogs',
- name: i18n.translate('home.tutorials.opensearchLogs.nameTitle', {
- defaultMessage: 'OpenSearch logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- isBeta: true,
- shortDescription: i18n.translate('home.tutorials.opensearchLogs.shortDescription', {
- defaultMessage: 'Collect and parse logs created by OpenSearch.',
- }),
- longDescription: i18n.translate('home.tutorials.opensearchLogs.longDescription', {
- defaultMessage:
- 'The `OpenSearch` Filebeat module parses logs created by OpenSearch. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-opensearch.html',
- },
- }),
- euiIconType: '/ui/logos/opensearch_mark.svg',
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.opensearchLogs.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-opensearch.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/opensearch_metrics/index.ts b/src/plugins/home/server/tutorials/opensearch_metrics/index.ts
deleted file mode 100644
index 38694ca9d588..000000000000
--- a/src/plugins/home/server/tutorials/opensearch_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function opensearchMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'opensearch';
- return {
- id: 'opensearchMetrics',
- name: i18n.translate('home.tutorials.opensearchMetrics.nameTitle', {
- defaultMessage: 'OpenSearch metrics',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.opensearchMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from OpenSearch.',
- }),
- longDescription: i18n.translate('home.tutorials.opensearchMetrics.longDescription', {
- defaultMessage:
- 'The `opensearch` Metricbeat module fetches internal metrics from OpenSearch. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-opensearch.html',
- },
- }),
- euiIconType: '/ui/logos/opensearch_mark.svg',
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.opensearchMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-opensearch.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/oracle_metrics/index.ts b/src/plugins/home/server/tutorials/oracle_metrics/index.ts
deleted file mode 100644
index 81557d3d4d0b..000000000000
--- a/src/plugins/home/server/tutorials/oracle_metrics/index.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function oracleMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'oracle';
- return {
- id: moduleName + 'Metrics',
- name: i18n.translate('home.tutorials.oracleMetrics.nameTitle', {
- defaultMessage: 'oracle metrics',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.oracleMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from a Oracle server.',
- }),
- longDescription: i18n.translate('home.tutorials.oracleMetrics.longDescription', {
- defaultMessage:
- 'The `{moduleName}` Metricbeat module fetches internal metrics from a Oracle server. \
-[Learn more]({learnMoreLink}).',
- values: {
- moduleName,
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-' + moduleName + '.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/oracle.svg',
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.oracleMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/opensearch-dashboards#/discover',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-' + moduleName + '.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/osquery_logs/index.ts b/src/plugins/home/server/tutorials/osquery_logs/index.ts
deleted file mode 100644
index 1610b438013e..000000000000
--- a/src/plugins/home/server/tutorials/osquery_logs/index.ts
+++ /dev/null
@@ -1,82 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function osqueryLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'osquery';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'osqueryLogs',
- name: i18n.translate('home.tutorials.osqueryLogs.nameTitle', {
- defaultMessage: 'Osquery logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.osqueryLogs.shortDescription', {
- defaultMessage: 'Collect osquery logs in JSON format.',
- }),
- longDescription: i18n.translate('home.tutorials.osqueryLogs.longDescription', {
- defaultMessage:
- 'The module collects and decodes the result logs written by \
- [osqueryd](https://osquery.readthedocs.io/en/latest/introduction/using-osqueryd/) in \
- the JSON format. To set up osqueryd follow the osquery installation instructions for \
- your operating system and configure the `filesystem` logging driver (the default). \
- Make sure UTC timestamps are enabled. \
- [Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-osquery.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/osquery.svg',
- artifacts: {
- dashboards: [
- {
- id: '69f5ae20-eb02-11e7-8f04-51231daa5b05-ecs',
- linkLabel: i18n.translate('home.tutorials.osqueryLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Osquery Compliance Pack',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-osquery.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/panw_logs/index.ts b/src/plugins/home/server/tutorials/panw_logs/index.ts
deleted file mode 100644
index d633b1034327..000000000000
--- a/src/plugins/home/server/tutorials/panw_logs/index.ts
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function panwLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'panw';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'panwLogs',
- name: i18n.translate('home.tutorials.panwLogs.nameTitle', {
- defaultMessage: 'Palo Alto Networks PAN-OS logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.panwLogs.shortDescription', {
- defaultMessage:
- 'Collect Palo Alto Networks PAN-OS threat and traffic logs over syslog or from a log file.',
- }),
- longDescription: i18n.translate('home.tutorials.panwLogs.longDescription', {
- defaultMessage:
- 'This is a module for Palo Alto Networks PAN-OS firewall monitoring \
- logs received over Syslog or read from a file. It currently supports \
- messages of Traffic and Threat types. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-panw.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/paloalto.svg',
- artifacts: {
- dashboards: [
- {
- id: 'e40ba240-7572-11e9-976e-65a8f47cc4c1',
- linkLabel: i18n.translate('home.tutorials.panwLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'PANW Network Flows',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-panw.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/php_fpm_metrics/index.ts b/src/plugins/home/server/tutorials/php_fpm_metrics/index.ts
deleted file mode 100644
index 2089e5d8154f..000000000000
--- a/src/plugins/home/server/tutorials/php_fpm_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function phpfpmMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'php_fpm';
- return {
- id: 'phpfpmMetrics',
- name: i18n.translate('home.tutorials.phpFpmMetrics.nameTitle', {
- defaultMessage: 'PHP-FPM metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- isBeta: false,
- shortDescription: i18n.translate('home.tutorials.phpFpmMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from PHP-FPM.',
- }),
- longDescription: i18n.translate('home.tutorials.phpFpmMetrics.longDescription', {
- defaultMessage:
- 'The `php_fpm` Metricbeat module fetches internal metrics from the PHP-FPM server. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-php_fpm.html',
- },
- }),
- euiIconType: 'logoPhp',
- artifacts: {
- dashboards: [
- /* {
- id: 'TODO',
- linkLabel: 'PHP-FPM metrics dashboard',
- isOverview: true
- }*/
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-php_fpm.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/postgresql_logs/index.ts b/src/plugins/home/server/tutorials/postgresql_logs/index.ts
deleted file mode 100644
index ebd4eb988700..000000000000
--- a/src/plugins/home/server/tutorials/postgresql_logs/index.ts
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function postgresqlLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'postgresql';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'postgresqlLogs',
- name: i18n.translate('home.tutorials.postgresqlLogs.nameTitle', {
- defaultMessage: 'PostgreSQL logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.postgresqlLogs.shortDescription', {
- defaultMessage: 'Collect and parse error and slow logs created by PostgreSQL.',
- }),
- longDescription: i18n.translate('home.tutorials.postgresqlLogs.longDescription', {
- defaultMessage:
- 'The `postgresql` Filebeat module parses error and slow logs created by PostgreSQL. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-postgresql.html',
- },
- }),
- euiIconType: 'logoPostgres',
- artifacts: {
- dashboards: [
- {
- id: '158be870-87f4-11e7-ad9c-db80de0bf8d3-ecs',
- linkLabel: i18n.translate(
- 'home.tutorials.postgresqlLogs.artifacts.dashboards.linkLabel',
- {
- defaultMessage: 'PostgreSQL logs dashboard',
- }
- ),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-postgresql.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/postgresql_metrics/index.ts b/src/plugins/home/server/tutorials/postgresql_metrics/index.ts
deleted file mode 100644
index dd4464084636..000000000000
--- a/src/plugins/home/server/tutorials/postgresql_metrics/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function postgresqlMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'postgresql';
- return {
- id: 'postgresqlMetrics',
- name: i18n.translate('home.tutorials.postgresqlMetrics.nameTitle', {
- defaultMessage: 'PostgreSQL metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- isBeta: false,
- shortDescription: i18n.translate('home.tutorials.postgresqlMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from PostgreSQL.',
- }),
- longDescription: i18n.translate('home.tutorials.postgresqlMetrics.longDescription', {
- defaultMessage:
- 'The `postgresql` Metricbeat module fetches internal metrics from the PostgreSQL server. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-postgresql.html',
- },
- }),
- euiIconType: 'logoPostgres',
- artifacts: {
- dashboards: [
- /*
- {
- id: 'TODO',
- linkLabel: 'PostgreSQL metrics dashboard',
- isOverview: true
- }
- */
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-postgresql.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/prometheus_metrics/index.ts b/src/plugins/home/server/tutorials/prometheus_metrics/index.ts
deleted file mode 100644
index 14e0cf53f3ff..000000000000
--- a/src/plugins/home/server/tutorials/prometheus_metrics/index.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function prometheusMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'prometheus';
- return {
- id: moduleName + 'Metrics',
- name: i18n.translate('home.tutorials.prometheusMetrics.nameTitle', {
- defaultMessage: 'Prometheus metrics',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.prometheusMetrics.shortDescription', {
- defaultMessage: 'Fetch metrics from a Prometheus exporter.',
- }),
- longDescription: i18n.translate('home.tutorials.prometheusMetrics.longDescription', {
- defaultMessage:
- 'The `{moduleName}` Metricbeat module fetches metrics from Prometheus endpoint. \
-[Learn more]({learnMoreLink}).',
- values: {
- moduleName,
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-' + moduleName + '.html',
- },
- }),
- euiIconType: 'logoPrometheus',
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.prometheusMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-' + moduleName + '.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/rabbitmq_logs/index.ts b/src/plugins/home/server/tutorials/rabbitmq_logs/index.ts
deleted file mode 100644
index 62c0396f1640..000000000000
--- a/src/plugins/home/server/tutorials/rabbitmq_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function rabbitmqLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'rabbitmq';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'rabbitmqLogs',
- name: i18n.translate('home.tutorials.rabbitmqLogs.nameTitle', {
- defaultMessage: 'RabbitMQ logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.rabbitmqLogs.shortDescription', {
- defaultMessage: 'Collect RabbitMQ logs.',
- }),
- longDescription: i18n.translate('home.tutorials.rabbitmqLogs.longDescription', {
- defaultMessage:
- 'This is the module for parsing [RabbitMQ log files](https://www.rabbitmq.com/logging.html) \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-rabbitmq.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/rabbitmq.svg',
- artifacts: {
- dashboards: [],
- application: {
- label: i18n.translate('home.tutorials.rabbitmqLogs.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-rabbitmq.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/rabbitmq_metrics/index.ts b/src/plugins/home/server/tutorials/rabbitmq_metrics/index.ts
deleted file mode 100644
index 50cae7495f67..000000000000
--- a/src/plugins/home/server/tutorials/rabbitmq_metrics/index.ts
+++ /dev/null
@@ -1,81 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function rabbitmqMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'rabbitmq';
- return {
- id: 'rabbitmqMetrics',
- name: i18n.translate('home.tutorials.rabbitmqMetrics.nameTitle', {
- defaultMessage: 'RabbitMQ metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.rabbitmqMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from the RabbitMQ server.',
- }),
- longDescription: i18n.translate('home.tutorials.rabbitmqMetrics.longDescription', {
- defaultMessage:
- 'The `rabbitmq` Metricbeat module fetches internal metrics from the RabbitMQ server. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-rabbitmq.html',
- },
- }),
- euiIconType: 'logoRabbitmq',
- isBeta: false,
- artifacts: {
- dashboards: [
- {
- id: 'AV4YobKIge1VCbKU_qVo-ecs',
- linkLabel: i18n.translate(
- 'home.tutorials.rabbitmqMetrics.artifacts.dashboards.linkLabel',
- {
- defaultMessage: 'RabbitMQ metrics dashboard',
- }
- ),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-rabbitmq.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/radware_logs/index.ts b/src/plugins/home/server/tutorials/radware_logs/index.ts
deleted file mode 100644
index 942793817e9d..000000000000
--- a/src/plugins/home/server/tutorials/radware_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function radwareLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'radware';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'radwareLogs',
- name: i18n.translate('home.tutorials.radwareLogs.nameTitle', {
- defaultMessage: 'Radware DefensePro logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.radwareLogs.shortDescription', {
- defaultMessage: 'Collect Radware DefensePro logs over syslog or from a file.',
- }),
- longDescription: i18n.translate('home.tutorials.radwareLogs.longDescription', {
- defaultMessage:
- 'This is a module for receiving Radware DefensePro logs over Syslog or a file. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-radware.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/radware.svg',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.radwareLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-radware.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/redis_logs/index.ts b/src/plugins/home/server/tutorials/redis_logs/index.ts
deleted file mode 100644
index 1a73c8c9a5e1..000000000000
--- a/src/plugins/home/server/tutorials/redis_logs/index.ts
+++ /dev/null
@@ -1,84 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function redisLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'redis';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'redisLogs',
- name: i18n.translate('home.tutorials.redisLogs.nameTitle', {
- defaultMessage: 'Redis logs',
- }),
- moduleName,
- category: TutorialsCategory.LOGGING,
- shortDescription: i18n.translate('home.tutorials.redisLogs.shortDescription', {
- defaultMessage: 'Collect and parse error and slow logs created by Redis.',
- }),
- longDescription: i18n.translate('home.tutorials.redisLogs.longDescription', {
- defaultMessage:
- 'The `redis` Filebeat module parses error and slow logs created by Redis. \
-For Redis to write error logs, make sure the `logfile` option, from the \
-Redis configuration file, is set to `redis-server.log`. \
-The slow logs are read directly from Redis via the `SLOWLOG` command. \
-For Redis to record slow logs, make sure the `slowlog-log-slower-than` \
-option is set. \
-Note that the `slowlog` fileset is experimental. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-redis.html',
- },
- }),
- euiIconType: 'logoRedis',
- artifacts: {
- dashboards: [
- {
- id: '7fea2930-478e-11e7-b1f0-cb29bac6bf8b-ecs',
- linkLabel: i18n.translate('home.tutorials.redisLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Redis logs dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-redis.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/redis_metrics/index.ts b/src/plugins/home/server/tutorials/redis_metrics/index.ts
deleted file mode 100644
index d6d63dfc4787..000000000000
--- a/src/plugins/home/server/tutorials/redis_metrics/index.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function redisMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'redis';
- return {
- id: 'redisMetrics',
- name: i18n.translate('home.tutorials.redisMetrics.nameTitle', {
- defaultMessage: 'Redis metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.redisMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from Redis.',
- }),
- longDescription: i18n.translate('home.tutorials.redisMetrics.longDescription', {
- defaultMessage:
- 'The `redis` Metricbeat module fetches internal metrics from the Redis server. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-redis.html',
- },
- }),
- euiIconType: 'logoRedis',
- artifacts: {
- dashboards: [
- {
- id: 'AV4YjZ5pux-M-tCAunxK-ecs',
- linkLabel: i18n.translate('home.tutorials.redisMetrics.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Redis metrics dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-redis.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/redisenterprise_metrics/index.ts b/src/plugins/home/server/tutorials/redisenterprise_metrics/index.ts
deleted file mode 100644
index ef0d922d63f1..000000000000
--- a/src/plugins/home/server/tutorials/redisenterprise_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function redisenterpriseMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'redisenterprise';
- return {
- id: 'redisenterpriseMetrics',
- name: i18n.translate('home.tutorials.redisenterpriseMetrics.nameTitle', {
- defaultMessage: 'Redis Enterprise metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.redisenterpriseMetrics.shortDescription', {
- defaultMessage: 'Fetch monitoring metrics from Redis Enterprise Server.',
- }),
- longDescription: i18n.translate('home.tutorials.redisenterpriseMetrics.longDescription', {
- defaultMessage:
- 'The `redisenterprise` Metricbeat module fetches monitoring metrics from Redis Enterprise Server \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-redisenterprise.html',
- },
- }),
- euiIconType: 'logoRedis',
- isBeta: true,
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.redisenterpriseMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-redisenterprise.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/register.ts b/src/plugins/home/server/tutorials/register.ts
deleted file mode 100644
index 0f6b045b2c38..000000000000
--- a/src/plugins/home/server/tutorials/register.ts
+++ /dev/null
@@ -1,251 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { activemqLogsSpecProvider } from './activemq_logs';
-import { activemqMetricsSpecProvider } from './activemq_metrics';
-import { aerospikeMetricsSpecProvider } from './aerospike_metrics';
-import { apacheLogsSpecProvider } from './apache_logs';
-import { apacheMetricsSpecProvider } from './apache_metrics';
-import { auditbeatSpecProvider } from './auditbeat';
-import { auditdLogsSpecProvider } from './auditd_logs';
-import { awsLogsSpecProvider } from './aws_logs';
-import { awsMetricsSpecProvider } from './aws_metrics';
-import { azureLogsSpecProvider } from './azure_logs';
-import { azureMetricsSpecProvider } from './azure_metrics';
-import { barracudaLogsSpecProvider } from './barracuda_logs';
-import { bluecoatLogsSpecProvider } from './bluecoat_logs';
-import { cefLogsSpecProvider } from './cef_logs';
-import { cephMetricsSpecProvider } from './ceph_metrics';
-import { checkpointLogsSpecProvider } from './checkpoint_logs';
-import { ciscoLogsSpecProvider } from './cisco_logs';
-import { cloudwatchLogsSpecProvider } from './cloudwatch_logs';
-import { cockroachdbMetricsSpecProvider } from './cockroachdb_metrics';
-import { consulMetricsSpecProvider } from './consul_metrics';
-import { corednsLogsSpecProvider } from './coredns_logs';
-import { corednsMetricsSpecProvider } from './coredns_metrics';
-import { couchbaseMetricsSpecProvider } from './couchbase_metrics';
-import { couchdbMetricsSpecProvider } from './couchdb_metrics';
-import { crowdstrikeLogsSpecProvider } from './crowdstrike_logs';
-import { cylanceLogsSpecProvider } from './cylance_logs';
-import { dockerMetricsSpecProvider } from './docker_metrics';
-import { dropwizardMetricsSpecProvider } from './dropwizard_metrics';
-import { opensearchLogsSpecProvider } from './opensearch_logs';
-import { opensearchMetricsSpecProvider } from './opensearch_metrics';
-import { envoyproxyLogsSpecProvider } from './envoyproxy_logs';
-import { envoyproxyMetricsSpecProvider } from './envoyproxy_metrics';
-import { etcdMetricsSpecProvider } from './etcd_metrics';
-import { f5LogsSpecProvider } from './f5_logs';
-import { fortinetLogsSpecProvider } from './fortinet_logs';
-import { golangMetricsSpecProvider } from './golang_metrics';
-import { googlecloudLogsSpecProvider } from './googlecloud_logs';
-import { googlecloudMetricsSpecProvider } from './googlecloud_metrics';
-import { gsuiteLogsSpecProvider } from './gsuite_logs';
-import { haproxyLogsSpecProvider } from './haproxy_logs';
-import { haproxyMetricsSpecProvider } from './haproxy_metrics';
-import { ibmmqLogsSpecProvider } from './ibmmq_logs';
-import { ibmmqMetricsSpecProvider } from './ibmmq_metrics';
-import { icingaLogsSpecProvider } from './icinga_logs';
-import { iisLogsSpecProvider } from './iis_logs';
-import { iisMetricsSpecProvider } from './iis_metrics';
-import { impervaLogsSpecProvider } from './imperva_logs';
-import { infobloxLogsSpecProvider } from './infoblox_logs';
-import { iptablesLogsSpecProvider } from './iptables_logs';
-import { juniperLogsSpecProvider } from './juniper_logs';
-import { kafkaLogsSpecProvider } from './kafka_logs';
-import { kafkaMetricsSpecProvider } from './kafka_metrics';
-import { opensearchDashboardsLogsSpecProvider } from './opensearch_dashboards_logs';
-import { opensearchDashboardsMetricsSpecProvider } from './opensearch_dashboards_metrics';
-import { kubernetesMetricsSpecProvider } from './kubernetes_metrics';
-import { logstashLogsSpecProvider } from './logstash_logs';
-import { logstashMetricsSpecProvider } from './logstash_metrics';
-import { memcachedMetricsSpecProvider } from './memcached_metrics';
-import { microsoftLogsSpecProvider } from './microsoft_logs';
-import { mispLogsSpecProvider } from './misp_logs';
-import { mongodbLogsSpecProvider } from './mongodb_logs';
-import { mongodbMetricsSpecProvider } from './mongodb_metrics';
-import { mssqlLogsSpecProvider } from './mssql_logs';
-import { mssqlMetricsSpecProvider } from './mssql_metrics';
-import { muninMetricsSpecProvider } from './munin_metrics';
-import { mysqlLogsSpecProvider } from './mysql_logs';
-import { mysqlMetricsSpecProvider } from './mysql_metrics';
-import { natsLogsSpecProvider } from './nats_logs';
-import { natsMetricsSpecProvider } from './nats_metrics';
-import { netflowLogsSpecProvider } from './netflow_logs';
-import { netscoutLogsSpecProvider } from './netscout_logs';
-import { nginxLogsSpecProvider } from './nginx_logs';
-import { nginxMetricsSpecProvider } from './nginx_metrics';
-import { o365LogsSpecProvider } from './o365_logs';
-import { oktaLogsSpecProvider } from './okta_logs';
-import { openmetricsMetricsSpecProvider } from './openmetrics_metrics';
-import { oracleMetricsSpecProvider } from './oracle_metrics';
-import { osqueryLogsSpecProvider } from './osquery_logs';
-import { panwLogsSpecProvider } from './panw_logs';
-import { phpfpmMetricsSpecProvider } from './php_fpm_metrics';
-import { postgresqlLogsSpecProvider } from './postgresql_logs';
-import { postgresqlMetricsSpecProvider } from './postgresql_metrics';
-import { prometheusMetricsSpecProvider } from './prometheus_metrics';
-import { rabbitmqLogsSpecProvider } from './rabbitmq_logs';
-import { rabbitmqMetricsSpecProvider } from './rabbitmq_metrics';
-import { radwareLogsSpecProvider } from './radware_logs';
-import { redisLogsSpecProvider } from './redis_logs';
-import { redisMetricsSpecProvider } from './redis_metrics';
-import { redisenterpriseMetricsSpecProvider } from './redisenterprise_metrics';
-import { santaLogsSpecProvider } from './santa_logs';
-import { sonicwallLogsSpecProvider } from './sonicwall_logs';
-import { sophosLogsSpecProvider } from './sophos_logs';
-import { squidLogsSpecProvider } from './squid_logs';
-import { stanMetricsSpecProvider } from './stan_metrics';
-import { statsdMetricsSpecProvider } from './statsd_metrics';
-import { suricataLogsSpecProvider } from './suricata_logs';
-import { systemLogsSpecProvider } from './system_logs';
-import { systemMetricsSpecProvider } from './system_metrics';
-import { tomcatLogsSpecProvider } from './tomcat_logs';
-import { traefikLogsSpecProvider } from './traefik_logs';
-import { traefikMetricsSpecProvider } from './traefik_metrics';
-import { uptimeMonitorsSpecProvider } from './uptime_monitors';
-import { uwsgiMetricsSpecProvider } from './uwsgi_metrics';
-import { vSphereMetricsSpecProvider } from './vsphere_metrics';
-import { windowsEventLogsSpecProvider } from './windows_event_logs';
-import { windowsMetricsSpecProvider } from './windows_metrics';
-import { zeekLogsSpecProvider } from './zeek_logs';
-import { zookeeperMetricsSpecProvider } from './zookeeper_metrics';
-import { zscalerLogsSpecProvider } from './zscaler_logs';
-
-export const builtInTutorials = [
- systemLogsSpecProvider,
- systemMetricsSpecProvider,
- apacheLogsSpecProvider,
- apacheMetricsSpecProvider,
- opensearchLogsSpecProvider,
- iisLogsSpecProvider,
- kafkaLogsSpecProvider,
- logstashLogsSpecProvider,
- nginxLogsSpecProvider,
- nginxMetricsSpecProvider,
- mysqlLogsSpecProvider,
- mysqlMetricsSpecProvider,
- mongodbMetricsSpecProvider,
- osqueryLogsSpecProvider,
- phpfpmMetricsSpecProvider,
- postgresqlMetricsSpecProvider,
- postgresqlLogsSpecProvider,
- rabbitmqMetricsSpecProvider,
- redisLogsSpecProvider,
- redisMetricsSpecProvider,
- suricataLogsSpecProvider,
- dockerMetricsSpecProvider,
- kubernetesMetricsSpecProvider,
- uwsgiMetricsSpecProvider,
- netflowLogsSpecProvider,
- traefikLogsSpecProvider,
- cephMetricsSpecProvider,
- aerospikeMetricsSpecProvider,
- couchbaseMetricsSpecProvider,
- dropwizardMetricsSpecProvider,
- opensearchMetricsSpecProvider,
- etcdMetricsSpecProvider,
- haproxyMetricsSpecProvider,
- kafkaMetricsSpecProvider,
- opensearchDashboardsMetricsSpecProvider,
- memcachedMetricsSpecProvider,
- muninMetricsSpecProvider,
- vSphereMetricsSpecProvider,
- windowsMetricsSpecProvider,
- windowsEventLogsSpecProvider,
- golangMetricsSpecProvider,
- logstashMetricsSpecProvider,
- prometheusMetricsSpecProvider,
- zookeeperMetricsSpecProvider,
- uptimeMonitorsSpecProvider,
- cloudwatchLogsSpecProvider,
- awsMetricsSpecProvider,
- mssqlMetricsSpecProvider,
- natsMetricsSpecProvider,
- natsLogsSpecProvider,
- zeekLogsSpecProvider,
- corednsMetricsSpecProvider,
- corednsLogsSpecProvider,
- auditbeatSpecProvider,
- iptablesLogsSpecProvider,
- ciscoLogsSpecProvider,
- envoyproxyLogsSpecProvider,
- couchdbMetricsSpecProvider,
- consulMetricsSpecProvider,
- cockroachdbMetricsSpecProvider,
- traefikMetricsSpecProvider,
- awsLogsSpecProvider,
- activemqLogsSpecProvider,
- activemqMetricsSpecProvider,
- azureMetricsSpecProvider,
- ibmmqLogsSpecProvider,
- ibmmqMetricsSpecProvider,
- stanMetricsSpecProvider,
- envoyproxyMetricsSpecProvider,
- statsdMetricsSpecProvider,
- redisenterpriseMetricsSpecProvider,
- openmetricsMetricsSpecProvider,
- oracleMetricsSpecProvider,
- iisMetricsSpecProvider,
- azureLogsSpecProvider,
- googlecloudMetricsSpecProvider,
- auditdLogsSpecProvider,
- barracudaLogsSpecProvider,
- bluecoatLogsSpecProvider,
- cefLogsSpecProvider,
- checkpointLogsSpecProvider,
- crowdstrikeLogsSpecProvider,
- cylanceLogsSpecProvider,
- f5LogsSpecProvider,
- fortinetLogsSpecProvider,
- googlecloudLogsSpecProvider,
- gsuiteLogsSpecProvider,
- haproxyLogsSpecProvider,
- icingaLogsSpecProvider,
- impervaLogsSpecProvider,
- infobloxLogsSpecProvider,
- juniperLogsSpecProvider,
- opensearchDashboardsLogsSpecProvider,
- microsoftLogsSpecProvider,
- mispLogsSpecProvider,
- mongodbLogsSpecProvider,
- mssqlLogsSpecProvider,
- netscoutLogsSpecProvider,
- o365LogsSpecProvider,
- oktaLogsSpecProvider,
- panwLogsSpecProvider,
- rabbitmqLogsSpecProvider,
- radwareLogsSpecProvider,
- santaLogsSpecProvider,
- sonicwallLogsSpecProvider,
- sophosLogsSpecProvider,
- squidLogsSpecProvider,
- tomcatLogsSpecProvider,
- zscalerLogsSpecProvider,
-];
diff --git a/src/plugins/home/server/tutorials/santa_logs/index.ts b/src/plugins/home/server/tutorials/santa_logs/index.ts
deleted file mode 100644
index 0008a3adb73d..000000000000
--- a/src/plugins/home/server/tutorials/santa_logs/index.ts
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function santaLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'santa';
- const platforms = ['OSX'] as const;
- return {
- id: 'santaLogs',
- name: i18n.translate('home.tutorials.santaLogs.nameTitle', {
- defaultMessage: 'Google Santa logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.santaLogs.shortDescription', {
- defaultMessage: 'Collect Google Santa logs about process executions on MacOS.',
- }),
- longDescription: i18n.translate('home.tutorials.santaLogs.longDescription', {
- defaultMessage:
- 'The module collects and parses logs from [Google Santa](https://github.com/google/santa), \
- a security tool for macOS that monitors process executions and can denylist/allowlist binaries. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-santa.html',
- },
- }),
- euiIconType: 'logoLogging',
- artifacts: {
- dashboards: [
- {
- id: '161855f0-ff6a-11e8-93c5-d5ecd1b3e307-ecs',
- linkLabel: i18n.translate('home.tutorials.santaLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Santa Overview',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-santa.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/sonicwall_logs/index.ts b/src/plugins/home/server/tutorials/sonicwall_logs/index.ts
deleted file mode 100644
index 0cd3bcd90cfc..000000000000
--- a/src/plugins/home/server/tutorials/sonicwall_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function sonicwallLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'sonicwall';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'sonicwallLogs',
- name: i18n.translate('home.tutorials.sonicwallLogs.nameTitle', {
- defaultMessage: 'Sonicwall FW logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.sonicwallLogs.shortDescription', {
- defaultMessage: 'Collect Sonicwall-FW logs over syslog or from a file.',
- }),
- longDescription: i18n.translate('home.tutorials.sonicwallLogs.longDescription', {
- defaultMessage:
- 'This is a module for receiving Sonicwall-FW logs over Syslog or a file. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-sonicwall.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/sonicwall.svg',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.radwareLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-sonicwall.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/sophos_logs/index.ts b/src/plugins/home/server/tutorials/sophos_logs/index.ts
deleted file mode 100644
index fc3935e13238..000000000000
--- a/src/plugins/home/server/tutorials/sophos_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function sophosLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'sophos';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'sophosLogs',
- name: i18n.translate('home.tutorials.sophosLogs.nameTitle', {
- defaultMessage: 'Sophos logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.sophosLogs.shortDescription', {
- defaultMessage: 'Collect Sophos XG SFOS logs over syslog.',
- }),
- longDescription: i18n.translate('home.tutorials.sophosLogs.longDescription', {
- defaultMessage:
- 'This is a module for Sophos Products, currently it supports XG SFOS logs sent in the syslog format. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-sophos.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/sophos.svg',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.sophosLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-sophos.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/squid_logs/index.ts b/src/plugins/home/server/tutorials/squid_logs/index.ts
deleted file mode 100644
index b88d1e995df7..000000000000
--- a/src/plugins/home/server/tutorials/squid_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function squidLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'squid';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'squidLogs',
- name: i18n.translate('home.tutorials.squidLogs.nameTitle', {
- defaultMessage: 'Squid logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.squidLogs.shortDescription', {
- defaultMessage: 'Collect Squid logs over syslog or from a file.',
- }),
- longDescription: i18n.translate('home.tutorials.squidLogs.longDescription', {
- defaultMessage:
- 'This is a module for receiving Squid logs over Syslog or a file. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-squid.html',
- },
- }),
- euiIconType: 'logoLogging',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.squidLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-squid.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/stan_metrics/index.ts b/src/plugins/home/server/tutorials/stan_metrics/index.ts
deleted file mode 100644
index 49be1e327e96..000000000000
--- a/src/plugins/home/server/tutorials/stan_metrics/index.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function stanMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'stan';
- return {
- id: 'stanMetrics',
- name: i18n.translate('home.tutorials.stanMetrics.nameTitle', {
- defaultMessage: 'STAN metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.stanMetrics.shortDescription', {
- defaultMessage: 'Fetch monitoring metrics from the STAN server.',
- }),
- longDescription: i18n.translate('home.tutorials.stanMetrics.longDescription', {
- defaultMessage:
- 'The `stan` Metricbeat module fetches monitoring metrics from STAN. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-stan.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/stan.svg',
- artifacts: {
- dashboards: [
- {
- id: 'dbf2e220-37ce-11ea-a9c8-152a657da3ab',
- linkLabel: i18n.translate('home.tutorials.stanMetrics.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Stan metrics dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-stan.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/statsd_metrics/index.ts b/src/plugins/home/server/tutorials/statsd_metrics/index.ts
deleted file mode 100644
index 1fbba2156324..000000000000
--- a/src/plugins/home/server/tutorials/statsd_metrics/index.ts
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory, TutorialSchema } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import { TutorialContext } from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function statsdMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'statsd';
- return {
- id: 'statsdMetrics',
- name: i18n.translate('home.tutorials.statsdMetrics.nameTitle', {
- defaultMessage: 'Statsd metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.statsdMetrics.shortDescription', {
- defaultMessage: 'Fetch monitoring metrics from statsd.',
- }),
- longDescription: i18n.translate('home.tutorials.statsdMetrics.longDescription', {
- defaultMessage:
- 'The `statsd` Metricbeat module fetches monitoring metrics from statsd. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-statsd.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/statsd.svg',
- artifacts: {
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-statsd.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/suricata_logs/index.ts b/src/plugins/home/server/tutorials/suricata_logs/index.ts
deleted file mode 100644
index 89091930add9..000000000000
--- a/src/plugins/home/server/tutorials/suricata_logs/index.ts
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function suricataLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'suricata';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'suricataLogs',
- name: i18n.translate('home.tutorials.suricataLogs.nameTitle', {
- defaultMessage: 'Suricata logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.suricataLogs.shortDescription', {
- defaultMessage: 'Collect Suricata IDS/IPS/NSM logs.',
- }),
- longDescription: i18n.translate('home.tutorials.suricataLogs.longDescription', {
- defaultMessage:
- 'This is a module to the Suricata IDS/IPS/NSM log. It parses logs that are \
- in the [Suricata Eve JSON format](https://suricata.readthedocs.io/en/latest/output/eve/eve-json-format.html). \
- [Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-suricata.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/suricata.svg',
- artifacts: {
- dashboards: [
- {
- id: '78289c40-86da-11e8-b59d-21efb914e65c-ecs',
- linkLabel: i18n.translate('home.tutorials.suricataLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Suricata Events Overview',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-suricata.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/system_logs/index.ts b/src/plugins/home/server/tutorials/system_logs/index.ts
deleted file mode 100644
index 0809fba7455c..000000000000
--- a/src/plugins/home/server/tutorials/system_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function systemLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'system';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'systemLogs',
- name: i18n.translate('home.tutorials.systemLogs.nameTitle', {
- defaultMessage: 'System logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.systemLogs.shortDescription', {
- defaultMessage: 'Collect system logs of common Unix/Linux based distributions.',
- }),
- longDescription: i18n.translate('home.tutorials.systemLogs.longDescription', {
- defaultMessage:
- 'The module collects and parses logs created by the system logging service of common Unix/Linux based distributions. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-system.html',
- },
- }),
- euiIconType: 'logoLogging',
- artifacts: {
- dashboards: [
- {
- id: 'Filebeat-syslog-dashboard-ecs',
- linkLabel: i18n.translate('home.tutorials.systemLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'System Syslog Dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-system.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/system_metrics/index.ts b/src/plugins/home/server/tutorials/system_metrics/index.ts
deleted file mode 100644
index 903591207884..000000000000
--- a/src/plugins/home/server/tutorials/system_metrics/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function systemMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'system';
- return {
- id: 'systemMetrics',
- name: i18n.translate('home.tutorials.systemMetrics.nameTitle', {
- defaultMessage: 'System metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.systemMetrics.shortDescription', {
- defaultMessage: 'Collect CPU, memory, network, and disk statistics from the host.',
- }),
- longDescription: i18n.translate('home.tutorials.systemMetrics.longDescription', {
- defaultMessage:
- 'The `system` Metricbeat module collects CPU, memory, network, and disk statistics from the host. \
-It collects system wide statistics and statistics per process and filesystem. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-system.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/system.svg',
- artifacts: {
- dashboards: [
- {
- id: 'Metricbeat-system-overview-ecs',
- linkLabel: i18n.translate('home.tutorials.systemMetrics.artifacts.dashboards.linkLabel', {
- defaultMessage: 'System metrics dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-system.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/tomcat_logs/index.ts b/src/plugins/home/server/tutorials/tomcat_logs/index.ts
deleted file mode 100644
index d7e6742f7e49..000000000000
--- a/src/plugins/home/server/tutorials/tomcat_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function tomcatLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'tomcat';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'tomcatLogs',
- name: i18n.translate('home.tutorials.tomcatLogs.nameTitle', {
- defaultMessage: 'Tomcat logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.tomcatLogs.shortDescription', {
- defaultMessage: 'Collect Apache Tomcat logs over syslog or from a file.',
- }),
- longDescription: i18n.translate('home.tutorials.tomcatLogs.longDescription', {
- defaultMessage:
- 'This is a module for receiving Apache Tomcat logs over Syslog or a file. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-tomcat.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/tomcat.svg',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.tomcatLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-tomcat.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/traefik_logs/index.ts b/src/plugins/home/server/tutorials/traefik_logs/index.ts
deleted file mode 100644
index de4767ac49af..000000000000
--- a/src/plugins/home/server/tutorials/traefik_logs/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function traefikLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'traefik';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'traefikLogs',
- name: i18n.translate('home.tutorials.traefikLogs.nameTitle', {
- defaultMessage: 'Traefik logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.traefikLogs.shortDescription', {
- defaultMessage: 'Collect Traefik access logs.',
- }),
- longDescription: i18n.translate('home.tutorials.traefikLogs.longDescription', {
- defaultMessage:
- 'The module parses access logs created by [Træfik](https://traefik.io/). \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-traefik.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/traefik.svg',
- artifacts: {
- dashboards: [
- {
- id: 'Filebeat-Traefik-Dashboard-ecs',
- linkLabel: i18n.translate('home.tutorials.traefikLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Traefik Access Logs',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-traefik.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/traefik_metrics/index.ts b/src/plugins/home/server/tutorials/traefik_metrics/index.ts
deleted file mode 100644
index 07d201f860b5..000000000000
--- a/src/plugins/home/server/tutorials/traefik_metrics/index.ts
+++ /dev/null
@@ -1,66 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory, TutorialSchema } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import { TutorialContext } from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function traefikMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'traefik';
- return {
- id: 'traefikMetrics',
- name: i18n.translate('home.tutorials.traefikMetrics.nameTitle', {
- defaultMessage: 'Traefik metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.traefikMetrics.shortDescription', {
- defaultMessage: 'Fetch monitoring metrics from Traefik.',
- }),
- longDescription: i18n.translate('home.tutorials.traefikMetrics.longDescription', {
- defaultMessage:
- 'The `traefik` Metricbeat module fetches monitoring metrics from Traefik. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-traefik.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/traefik.svg',
- artifacts: {
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-traefik.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/uptime_monitors/index.ts b/src/plugins/home/server/tutorials/uptime_monitors/index.ts
deleted file mode 100644
index f01fcfe700f2..000000000000
--- a/src/plugins/home/server/tutorials/uptime_monitors/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/heartbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function uptimeMonitorsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'uptime';
- return {
- id: 'uptimeMonitors',
- name: i18n.translate('home.tutorials.uptimeMonitors.nameTitle', {
- defaultMessage: 'Uptime Monitors',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.uptimeMonitors.shortDescription', {
- defaultMessage: 'Monitor services for their availability',
- }),
- longDescription: i18n.translate('home.tutorials.uptimeMonitors.longDescription', {
- defaultMessage:
- 'Monitor services for their availability with active probing. \
- Given a list of URLs, Heartbeat asks the simple question: Are you alive? \
- [Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.heartbeat}/heartbeat-installation-configuration.html',
- },
- }),
- euiIconType: 'uptimeApp',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/uptime',
- label: i18n.translate('home.tutorials.uptimeMonitors.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Uptime App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.heartbeat}/exported-fields.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions([], context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/uwsgi_metrics/index.ts b/src/plugins/home/server/tutorials/uwsgi_metrics/index.ts
deleted file mode 100644
index ed887eb1c00e..000000000000
--- a/src/plugins/home/server/tutorials/uwsgi_metrics/index.ts
+++ /dev/null
@@ -1,78 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function uwsgiMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'uwsgi';
- return {
- id: 'uwsgiMetrics',
- name: i18n.translate('home.tutorials.uwsgiMetrics.nameTitle', {
- defaultMessage: 'uWSGI metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.uwsgiMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from the uWSGI server.',
- }),
- longDescription: i18n.translate('home.tutorials.uwsgiMetrics.longDescription', {
- defaultMessage:
- 'The `uwsgi` Metricbeat module fetches internal metrics from the uWSGI server. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-uwsgi.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/uwsgi.svg',
- isBeta: false,
- artifacts: {
- dashboards: [
- {
- id: '32fca290-f0af-11e7-b9ff-9f96241065de-ecs',
- linkLabel: i18n.translate('home.tutorials.uwsgiMetrics.artifacts.dashboards.linkLabel', {
- defaultMessage: 'uWSGI metrics dashboard',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-uwsgi.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/vsphere_metrics/index.ts b/src/plugins/home/server/tutorials/vsphere_metrics/index.ts
deleted file mode 100644
index c817a02903e5..000000000000
--- a/src/plugins/home/server/tutorials/vsphere_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function vSphereMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'vsphere';
- return {
- id: 'vsphereMetrics',
- name: i18n.translate('home.tutorials.vsphereMetrics.nameTitle', {
- defaultMessage: 'vSphere metrics',
- }),
- moduleName,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.vsphereMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from vSphere.',
- }),
- longDescription: i18n.translate('home.tutorials.vsphereMetrics.longDescription', {
- defaultMessage:
- 'The `vsphere` Metricbeat module fetches internal metrics from a vSphere cluster. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-vsphere.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/vsphere.svg',
- isBeta: true,
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.vsphereMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-vsphere.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/windows_event_logs/index.ts b/src/plugins/home/server/tutorials/windows_event_logs/index.ts
deleted file mode 100644
index 09ed6fbb385c..000000000000
--- a/src/plugins/home/server/tutorials/windows_event_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/winlogbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function windowsEventLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'windows';
- return {
- id: 'windowsEventLogs',
- name: i18n.translate('home.tutorials.windowsEventLogs.nameTitle', {
- defaultMessage: 'Windows Event Log',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.windowsEventLogs.shortDescription', {
- defaultMessage: 'Fetch logs from the Windows Event Log.',
- }),
- longDescription: i18n.translate('home.tutorials.windowsEventLogs.longDescription', {
- defaultMessage:
- 'Use Winlogbeat to collect the logs from the Windows Event Log. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.winlogbeat}/index.html',
- },
- }),
- euiIconType: 'logoWindows',
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.windowsEventLogs.artifacts.application.label', {
- defaultMessage: 'SIEM App',
- }),
- path: '/app/siem',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.winlogbeat}/exported-fields.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/windows_metrics/index.ts b/src/plugins/home/server/tutorials/windows_metrics/index.ts
deleted file mode 100644
index a6a74894a730..000000000000
--- a/src/plugins/home/server/tutorials/windows_metrics/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function windowsMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'windows';
- return {
- id: 'windowsMetrics',
- name: i18n.translate('home.tutorials.windowsMetrics.nameTitle', {
- defaultMessage: 'Windows metrics',
- }),
- moduleName,
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.windowsMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from Windows.',
- }),
- longDescription: i18n.translate('home.tutorials.windowsMetrics.longDescription', {
- defaultMessage:
- 'The `windows` Metricbeat module fetches internal metrics from Windows. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-windows.html',
- },
- }),
- euiIconType: 'logoWindows',
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.windowsMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-windows.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/zeek_logs/index.ts b/src/plugins/home/server/tutorials/zeek_logs/index.ts
deleted file mode 100644
index 42946dbedda6..000000000000
--- a/src/plugins/home/server/tutorials/zeek_logs/index.ts
+++ /dev/null
@@ -1,79 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function zeekLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'zeek';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'zeekLogs',
- name: i18n.translate('home.tutorials.zeekLogs.nameTitle', {
- defaultMessage: 'Zeek logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.zeekLogs.shortDescription', {
- defaultMessage: 'Collect Zeek network security monitoring logs.',
- }),
- longDescription: i18n.translate('home.tutorials.zeekLogs.longDescription', {
- defaultMessage:
- 'This is a module for Zeek, which used to be called Bro. It parses logs \
- that are in the [Zeek JSON format](https://www.zeek.org/manual/release/logs/index.html). \
- [Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-zeek.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/zeek.svg',
- artifacts: {
- dashboards: [
- {
- id: '7cbb5410-3700-11e9-aa6d-ff445a78330c',
- linkLabel: i18n.translate('home.tutorials.zeekLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Zeek Overview',
- }),
- isOverview: true,
- },
- ],
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-zeek.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/zookeeper_metrics/index.ts b/src/plugins/home/server/tutorials/zookeeper_metrics/index.ts
deleted file mode 100644
index 9ab46408e889..000000000000
--- a/src/plugins/home/server/tutorials/zookeeper_metrics/index.ts
+++ /dev/null
@@ -1,77 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/metricbeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function zookeeperMetricsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'zookeeper';
- return {
- id: moduleName + 'Metrics',
- name: i18n.translate('home.tutorials.zookeeperMetrics.nameTitle', {
- defaultMessage: 'Zookeeper metrics',
- }),
- moduleName,
- euiIconType: '/plugins/home/assets/tutorials/logos/zookeeper.svg',
- isBeta: false,
- category: TutorialsCategory.METRICS,
- shortDescription: i18n.translate('home.tutorials.zookeeperMetrics.shortDescription', {
- defaultMessage: 'Fetch internal metrics from a Zookeeper server.',
- }),
- longDescription: i18n.translate('home.tutorials.zookeeperMetrics.longDescription', {
- defaultMessage:
- 'The `{moduleName}` Metricbeat module fetches internal metrics from a Zookeeper server. \
-[Learn more]({learnMoreLink}).',
- values: {
- moduleName,
- learnMoreLink: '{config.docs.beats.metricbeat}/metricbeat-module-' + moduleName + '.html',
- },
- }),
- artifacts: {
- application: {
- label: i18n.translate('home.tutorials.zookeeperMetrics.artifacts.application.label', {
- defaultMessage: 'Discover',
- }),
- path: '/app/discover#/',
- },
- dashboards: [],
- exportedFields: {
- documentationUrl: '{config.docs.beats.metricbeat}/exported-fields-' + moduleName + '.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, context),
- };
-}
diff --git a/src/plugins/home/server/tutorials/zscaler_logs/index.ts b/src/plugins/home/server/tutorials/zscaler_logs/index.ts
deleted file mode 100644
index ee081c170ce1..000000000000
--- a/src/plugins/home/server/tutorials/zscaler_logs/index.ts
+++ /dev/null
@@ -1,76 +0,0 @@
-/*
- * SPDX-License-Identifier: Apache-2.0
- *
- * The OpenSearch Contributors require contributions made to
- * this file be licensed under the Apache-2.0 license or a
- * compatible open source license.
- *
- * Any modifications Copyright OpenSearch Contributors. See
- * GitHub history for details.
- */
-
-/*
- * Licensed to Elasticsearch B.V. under one or more contributor
- * license agreements. See the NOTICE file distributed with
- * this work for additional information regarding copyright
- * ownership. Elasticsearch B.V. licenses this file to you under
- * the Apache License, Version 2.0 (the "License"); you may
- * not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-
-import { i18n } from '@osd/i18n';
-import { TutorialsCategory } from '../../services/tutorials';
-import { onPremInstructions } from '../instructions/filebeat_instructions';
-import {
- TutorialContext,
- TutorialSchema,
-} from '../../services/tutorials/lib/tutorials_registry_types';
-
-export function zscalerLogsSpecProvider(context: TutorialContext): TutorialSchema {
- const moduleName = 'zscaler';
- const platforms = ['OSX', 'DEB', 'RPM', 'WINDOWS'] as const;
- return {
- id: 'zscalerLogs',
- name: i18n.translate('home.tutorials.zscalerLogs.nameTitle', {
- defaultMessage: 'Zscaler Logs',
- }),
- moduleName,
- category: TutorialsCategory.SECURITY_SOLUTION,
- shortDescription: i18n.translate('home.tutorials.zscalerLogs.shortDescription', {
- defaultMessage: 'This is a module for receiving Zscaler NSS logs over Syslog or a file.',
- }),
- longDescription: i18n.translate('home.tutorials.zscalerLogs.longDescription', {
- defaultMessage:
- 'This is a module for receiving Zscaler NSS logs over Syslog or a file. \
-[Learn more]({learnMoreLink}).',
- values: {
- learnMoreLink: '{config.docs.beats.filebeat}/filebeat-module-zscaler.html',
- },
- }),
- euiIconType: '/plugins/home/assets/tutorials/logos/zscaler.svg',
- artifacts: {
- dashboards: [],
- application: {
- path: '/app/security',
- label: i18n.translate('home.tutorials.zscalerLogs.artifacts.dashboards.linkLabel', {
- defaultMessage: 'Security App',
- }),
- },
- exportedFields: {
- documentationUrl: '{config.docs.beats.filebeat}/exported-fields-zscaler.html',
- },
- },
- completionTimeMinutes: 10,
- onPrem: onPremInstructions(moduleName, platforms, context),
- };
-}