Skip to content

Commit c46c29f

Browse files
SUMO-251067 | Apoorv | Add. RabbitMQ docs updation
1 parent a76194c commit c46c29f

File tree

3 files changed

+26
-136
lines changed

3 files changed

+26
-136
lines changed

docs/integrations/containers-orchestration/activemq.md

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -429,6 +429,10 @@ import CreateMonitors from '../../reuse/apps/create-monitors.md';
429429
<CreateMonitors/>
430430
10. There are limits to how many alerts can be enabled
431431

432+
:::note permissions required
433+
To install these monitors, you need to have the [Manage Monitors role capability](/docs/manage/users-roles/roles/role-capabilities/#alerting).
434+
:::
435+
432436
### ActiveMQ alerts
433437

434438
| Alert Name | Alert Description and conditions | Alert Condition | Recover Condition |

docs/integrations/containers-orchestration/kafka.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -77,7 +77,7 @@ Following [fields](https://help.sumologic.com/docs/manage/fields/) will always b
7777
* `pod_labels_messaging_cluster`
7878

7979

80-
If you're using ActiveMQ in a non-Kubernetes environment, these additional fields will get created automatically as a part of app installation process:
80+
If you're using Kafka in a non-Kubernetes environment, these additional fields will get created automatically as a part of app installation process:
8181
* `component`
8282
* `environment`
8383
* `messaging_system`

docs/integrations/containers-orchestration/rabbitmq.md

Lines changed: 21 additions & 135 deletions
Original file line numberDiff line numberDiff line change
@@ -51,38 +51,26 @@ Host: broker-1 Name: /var/log/rabbitmq/rabbit.log Category: logfile
5151
This section provides instructions for configuring log and metric collection for the Sumo Logic App for RabbitMQ.
5252

5353

54-
### Step 1: Configure Fields in Sumo Logic
54+
### Step 1: Fields in Sumo Logic
5555

56-
Create the following Fields in Sumo Logic prior to configuring collection. This ensures that your logs and metrics are tagged with relevant metadata, which is required by the app dashboards. For information on setting up fields, see [Sumo Logic Fields](/docs/manage/fields).
56+
Following [fields](https://help.sumologic.com/docs/manage/fields/) will always be created automatically as a part of app installation process:
5757

58-
<Tabs
59-
groupId="k8s-nonk8s"
60-
defaultValue="k8s"
61-
values={[
62-
{label: 'Kubernetes environments', value: 'k8s'},
63-
{label: 'Non-Kubernetes environments', value: 'non-k8s'},
64-
]}>
58+
* `pod_labels_component`
59+
* `pod_labels_environment`
60+
* `pod_labels_messaging_system`
61+
* `pod_labels_messaging_cluster`
6562

66-
<TabItem value="k8s">
6763

68-
If you're using RabbitMQ in a Kubernetes environment, create the fields:
69-
* pod_labels_component
70-
* pod_labels_environment
71-
* pod_labels_messaging_system
72-
* pod_labels_messaging_cluster
64+
If you're using RabbitMQ in a non-Kubernetes environment, these additional fields will get created automatically as a part of app installation process:
65+
* `component`
66+
* `environment`
67+
* `messaging_system`
68+
* `messaging_cluster`
69+
* `pod`
7370

74-
</TabItem>
75-
<TabItem value="non-k8s">
71+
For information on setting up fields, see [Sumo Logic Fields](/docs/manage/fields).
7672

77-
If you're using RabbitMQ in a non-Kubernetes environment, create the fields:
78-
* component
79-
* environment
80-
* messaging_system
81-
* messaging_cluster
82-
* pod
8373

84-
</TabItem>
85-
</Tabs>
8674

8775

8876
### Step 2: Configure Collection for RabbitMQ
@@ -211,26 +199,7 @@ For all other parameters see [this doc](/docs/send-data/collect-from-other-data-
211199
kubectl describe pod <RabbitMQ_pod_name>
212200
```
213201
5. Sumo Logic Kubernetes collection will automatically start collecting logs from the pods having the annotations defined above.
214-
3. **Add an FER to normalize the fields in Kubernetes environments**. Labels created in Kubernetes environments automatically are prefixed with `pod_labels`. To normalize these for our app to work, we need to create a Field Extraction Rule if not already created for Messaging Application Components. To do so:
215-
1. Go to **Manage Data > Logs > Field Extraction Rules**.
216-
2. Click the + Add button on the top right of the table.
217-
3. The **Add Field Extraction Rule** form will appear:
218-
4. Enter the following options:
219-
* **Rule Name**. Enter the name as **App Observability - Messaging**.
220-
* **Applied At.** Choose **Ingest Time**
221-
* **Scope**. Select **Specific Data**
222-
* **Scope**: Enter the following keyword search expression:
223-
```sql
224-
pod_labels_environment=* pod_labels_component=messaging pod_labels_messaging_system=* pod_labels_messaging_cluster=*
225-
```
226-
* **Parse Expression**.Enter the following parse expression:
227-
```sql
228-
| if (!isEmpty(pod_labels_environment), pod_labels_environment, "") as environment
229-
| pod_labels_component as component
230-
| pod_labels_messaging_system as messaging_system
231-
| pod_labels_messaging_cluster as messaging_cluster
232-
```
233-
5. Click **Save** to create the rule.
202+
3. **FER to normalize the fields in Kubernetes environments**. Labels created in Kubernetes environments automatically are prefixed with `pod_labels`. To normalize these for our app to work, we will have a Field Extraction Rule automatically created with named as **AppObservabilityMessagingRabbitMQFER**
234203

235204
</TabItem>
236205
<TabItem value="non-k8s">
@@ -361,98 +330,15 @@ At this point, RabbitMQ logs should start flowing into Sumo Logic.
361330
</TabItem>
362331
</Tabs>
363332
364-
## Installing Monitors
365-
366-
These instructions assume you have already set up collection as described in the [Collect Logs and Metrics for RabbitMQ](#collecting-logs-and-metrics-for-rabbitmq).
367-
368-
Sumo Logic has provided pre-packaged alerts available through [Sumo Logic monitors](/docs/alerts/monitors) to help you proactively determine if a RabbitMQ cluster is available and performing as expected. These monitors are based on metric and log data and include pre-set thresholds that reflect industry best practices and recommendations. For more information about individual alerts, see [RabbitMQ Alerts](#rabbitmq-alerts).
369-
370-
To install these monitors, you must have the **Manage Monitors** role capability.
371-
372-
You can install monitors by importing a JSON file or using a Terraform script.
373-
374-
There are limits to how many alerts can be enabled. For more information, see [Monitors](/docs/alerts/monitors/create-monitor) for details.
375-
376-
377-
#### Method A: Install Monitors by importing a JSON file
378-
379-
1. Download the [JSON file](https://github.com/SumoLogic/terraform-sumologic-sumo-logic-monitor/blob/main/monitor_packages/RabbitMQ/rabbitmq.json) that describes the monitors.
380-
2. The [JSON](https://github.com/SumoLogic/terraform-sumologic-sumo-logic-monitor/blob/main/monitor_packages/RabbitMQ/rabbitmq.json) contains the alerts that are based on Sumo Logic searches that do not have any scope filters and therefore will be applicable to all RabbitMQ clusters, the data for which has been collected via the instructions in the previous sections. However, if you would like to restrict these alerts to specific clusters or environments, update the JSON file by replacing the text `messaging_cluster=*` with `<Your Custom Filter>`. Custom filter examples:
381-
* For alerts applicable only to a specific cluster, your custom filter would be: `messaging_cluster=dev-rabbitmq01`
382-
* For alerts applicable to all clusters that start with RabbitMQ-prod, your custom filter would be: `messaging_cluster=RabbitMQ-prod*`
383-
* For alerts applicable to a specific cluster within a production environment, your custom filter would be: `messaging_cluster=dev-rabbitmq01 AND environment=prod` (This assumes you have set the optional environment tag while configuring collection)
384-
3. [**Classic UI**](/docs/get-started/sumo-logic-ui-classic). In the main Sumo Logic menu, select **Manage Data > Monitoring > Monitors**. <br/>[**New UI**](/docs/get-started/sumo-logic-ui). In the main Sumo Logic menu, select **Alerts > Monitors**. You can also click the **Go To...** menu at the top of the screen and select **Monitors**.
385-
4. Click **Add**.
386-
5. Click **Import**.
387-
6. On the **Import Content popup**, enter **RabbitMQ** in the Name field, paste in the JSON into the the popup, and click **Import**.
388-
7. The monitors are created in a "RabbitMQ" folder. The monitors are disabled by default. See the [Monitors](/docs/alerts/monitors) topic for information about enabling monitors and configuring notifications or connections.
389-
390-
#### Method B: Install Monitors using a Terraform script
391-
392-
1. Generate an access key and access ID for a user that has the **Manage Monitors** role capability. For instructions see [Access Keys](/docs/manage/security/access-keys).
393-
2. Download [Terraform 0.13](https://www.terraform.io/downloads.html) or later, and install it.
394-
3. Download the Sumo Logic Terraform package for MySQL monitors: The alerts package is available in the Sumo Logic GitHub [repository](https://github.com/SumoLogic/terraform-sumologic-sumo-logic-monitor/tree/main/monitor_packages/mysql). You can either download it using the git clone command or as a zip file.
395-
4. Alert Configuration: After extracting the package, navigate to the terraform-sumologic-sumo-logic-monitor/monitor_packages/RabbitMQ/ directory.
396-
397-
Edit the rabbitmq.auto.tfvars file and add the Sumo Logic Access Key and Access ID from Step 1 and your Sumo Logic deployment. If you're not sure of your deployment, see [Sumo Logic Endpoints and Firewall Security](/docs/api/getting-started#sumo-logic-endpoints-by-deployment-and-firewall-security).
398-
```bash
399-
access_id = "<SUMOLOGIC ACCESS ID>"
400-
access_key = "<SUMOLOGIC ACCESS KEY>"
401-
environment = "<SUMOLOGIC DEPLOYMENT>"
402-
```
403-
404-
The Terraform script installs the alerts without any scope filters, if you would like to restrict the alerts to specific clusters or environments, update the `rabbitmq_data_source` variable. For example:
405-
* To configure alerts for A specific cluster, set `rabbitmq_data_source` to something like: messaging_cluster=rabbitmq.prod.01
406-
* To configure alerts for All clusters in an environment, set `rabbitmq_data_source` to something like: environment=prod
407-
* To configure alerts for Multiple clusters using a wildcard, set `rabbitmq_data_source` to something like: `messaging_cluster=rabbitmq-prod*`
408-
* To configure alerts for A specific cluster within a specific environment, set `rabbitmq_data_source` to something like: `messaging_cluster=rabbitmq-1 and environment=prod`. This assumes you have configured and applied Fields as described in Step 1: Configure Fields of the Sumo Logic of the Collect Logs and Metrics for RabbitMQ.
409-
410-
All monitors are disabled by default on installation. To enable all of the monitors, set the monitors_disabled parameter to false.
411-
412-
By default, the monitors will be located in a "RabbitMQ" folder on the **Monitors** page. To change the name of the folder, update the monitor folder name in the folder variable in the rabbitmq.auto.tfvars file.
413-
414-
5. If you want the alerts to send email or connection notifications, edit the `rabbitmq_notifications.auto.tfvars` file to populate the `connection_notifications` and `email_notifications` sections. Examples are provided below.
415-
416-
In the variable definition below, replace `<CONNECTION_ID>` with the connection ID of the Webhook connection. You can obtain the Webhook connection ID by calling the [Monitors API](https://api.sumologic.com/docs/#operation/listConnections).
417-
418-
```bash title="Pagerduty connection example"
419-
connection_notifications = [
420-
{
421-
connection_type = "PagerDuty",
422-
connection_id = "<CONNECTION_ID>",
423-
payload_override = "{\"service_key\": \"your_pagerduty_api_integration_key\",\"event_type\": \"trigger\",\"description\": \"Alert: Triggered {{TriggerType}} for Monitor {{Name}}\",\"client\": \"Sumo Logic\",\"client_url\": \"{{QueryUrl}}\"}",
424-
run_for_trigger_types = ["Critical", "ResolvedCritical"]
425-
},
426-
{
427-
connection_type = "Webhook",
428-
connection_id = "<CONNECTION_ID>",
429-
payload_override = "",
430-
run_for_trigger_types = ["Critical", "ResolvedCritical"]
431-
}
432-
]
433-
```
434-
435-
For information about overriding the payload for different connection types, see [Set Up Webhook Connections](/docs/alerts/webhook-connections/set-up-webhook-connections).
436-
437-
```bash title="Email notifications example"
438-
email_notifications = [
439-
{
440-
connection_type = "Email",
441-
recipients = ["[email protected]"],
442-
subject = "Monitor Alert: {{TriggerType}} on {{Name}}",
443-
time_zone = "PST",
444-
message_body = "Triggered {{TriggerType}} Alert on {{Name}}: {{QueryURL}}",
445-
run_for_trigger_types = ["Critical", "ResolvedCritical"]
446-
}
447-
]
448-
```
449-
450-
6. Install Monitors:
451-
1. Navigate to the `terraform-sumologic-sumo-logic-monitor/monitor_packages/rabbitmq/` directory and run terraform init. This will initialize Terraform and download the required components.
452-
2. Run `terraform plan` to view the monitors that Terraform will create or modify.
453-
3. Run `terraform apply`.
333+
## RabbitMQ Monitors
454334
335+
import CreateMonitors from '../../reuse/apps/create-monitors.md';
455336
337+
<CreateMonitors/>
338+
10. There are limits to how many alerts can be enabled
339+
:::note permissions required
340+
To install these monitors, you need to have the [Manage Monitors role capability](/docs/manage/users-roles/roles/role-capabilities/#alerting).
341+
:::
456342
## Installing the RabbitMQ App
457343
458344
This section demonstrates how to install the RabbitMQ App.

0 commit comments

Comments
 (0)