Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
28 commits
Select commit Hold shift + click to select a range
aaec0c7
REL-1212267: Custom JSON Documentation.
santhoshjattappa Dec 8, 2025
5b55eba
REL-1212267: Folder change and link the page in install other configu…
santhoshjattappa Dec 9, 2025
cd9a634
REL-1212267: Troubleshooting for Certificates.
santhoshjattappa Dec 9, 2025
ac9d2cc
REL-1212267 : Slack configuration details added
santhoshjattappa Dec 11, 2025
05032eb
REL-1212267: Slack information added.
santhoshjattappa Dec 12, 2025
440abb7
REL-1212267: Corrected Slack Example image
santhoshjattappa Dec 12, 2025
f631c73
REL-1212267: Seperate Files for Windows Service, Certificates and Al…
santhoshjattappa Dec 12, 2025
dfbab21
REL-1212267: Certificates Get certificates added and link is added in…
santhoshjattappa Dec 12, 2025
cca4abd
REL-1212267: sql cluster changes pushed.
amithshet Dec 12, 2025
9f8d7dc
REL-1212267: Commit regarding re-structuring of the documents and pla…
amithshet Dec 12, 2025
f7e9481
REL-1212267 commit: Updated docs to have same consistency related to …
amithshet Dec 15, 2025
24cbb4e
REL-1212267 commit: push related to consistency in all documents.
amithshet Dec 15, 2025
0d21e61
REL-1212267 commit: fixed typo in slack doc
amithshet Dec 15, 2025
12f6747
REL-1212267 commit: updated correct json.
amithshet Dec 15, 2025
b53b57e
REL-1212267 commit: addressed internal feedback of including only one…
amithshet Dec 15, 2025
843ba94
REL-1212267: Addressed PM feedback.
amithshet Dec 15, 2025
74162fc
REL-1212267: addressed internal feedbacks
amithshet Dec 16, 2025
046eebd
REL-1212267: Updated sql bcp path query and screenshot.
amithshet Dec 16, 2025
69ed400
REL-1212267: update after a round of final review
amithshet Dec 16, 2025
1b8558d
REL-1212267: Addressed few more internal feedbacks
amithshet Dec 16, 2025
10e68a3
REL-1212267: feedbacks.
amithshet Dec 16, 2025
3650eb2
REL-1212267: feedbacks addressed.
amithshet Dec 17, 2025
0eca81c
REL-1212267: updated one feedback duering proof read.
amithshet Dec 17, 2025
9af74a1
REL-1212267: updated feedbacks
amithshet Dec 17, 2025
1bdfa7e
REL-1212267: updated
amithshet Dec 17, 2025
84a7248
Incorporating the review comments by PM.
santhoshjattappa Dec 22, 2025
342b71d
Merge branch 'REL-1238635-cumulative-cum-folder-hierarchy-change' int…
santhoshjattappa Dec 22, 2025
e8f26f2
REL-1212267: addressed second round feedbacks.
amithshet Jan 6, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
## Alert Notification Handlers [Early Access]

The `alertNotificationHandlers` section configures integrations for sending alerts when monitored resources meet specified conditions. This enables automated notifications to external platforms such as Slack.

### Slack Handler

The Slack handler allows alerts to be sent to a designated Slack channel. Configuration options include:

| Property | Description |
|----------------------------|-----------------------------------------------------------------------------|
| `accessToken` | The Slack API token used for authentication. |
| `acknowledgeAlertEnabled` | Boolean flag to enable/disable alert acknowledgment in Slack. This is by dafault false since implementation is not done. |
| `channel` | The Slack channel ID where alerts will be posted. |
| `enabled` | Boolean flag to enable/disable Slack notifications. |
| `messageIntervalSeconds` | Interval (in seconds) between alert messages sent to Slack. It should be more than or equal to min slack interval in seconds i.e. 180 |

---

### Configure Slack in Custom JSON

#### Prerequisites

Before configuring Slack notifications:

- Create a Slack App in your Slack workspace.
- Generate an OAuth token with the required permissions to post messages to channels.

#### Configuration

To configure Slack notification in the custom JSON file, locate the `alertNotificationHandlers` section and update the configuration as below.

- Provide OAuth Token in `accessToken`.
- Set `channel` to the Slack channel ID where alerts will be sent.
- Set `enabled` to `true` to enable Slack notifications.
- Set `messageIntervalSeconds` to define the interval at which messages are sent to Slack. By default, it is set to 180 seconds from the code base. If, we set it to less than 180 seconds, it will be overridden to 180 seconds.

```json
"alertNotificationHandlers": {
"slack": {
"accessToken": "slack-access-token",
"acknowledgeAlertEnabled": false,
"channel": "slack-channel-id",
"enabled": true,
"messageIntervalSeconds": 60
}
}
```

Copy link
Contributor

@KarunaDhawan KarunaDhawan Jan 6, 2026

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Environment Watch automatically reads this file and applies the defined monitoring rules to the relevant instances, products, and hosts. - is there any time wait before it picks up the new configured file?
if yes, we should call that out before verifying in Kibana. if not, no change is required.

### Verification in Kibana

- Navigate to Kibana Discover.
- Select `logs-*` Data View.
- Search for "The Environment Watch shared configuration object is not empty" which indicates that the EW Windows Service fetching values from the custom JSON configuration successfully.

![](/resources/custom-json-images/environment-watch-shared-settings-not-empty-generic.png)

### Slack Notification Example

![Slack Example](../../resources/slackalerts-images/SlackNotification.png)

106 changes: 106 additions & 0 deletions docs/custom-json-configuration/certificates_configuration.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,106 @@
# Certificates Configuration

This section describes how to configure certificate monitoring using the `environmentWatchConfiguration` JSON object.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

JSON object is correct, but can we update to JSON configuration file?


---

## Overview

Monitors the presence and validity of specified certificates in Windows certificate stores. By default, the Relativity Secret Store certificate is monitored without requiring additional configuration. Other certificates can be added based on the installed product or specific requirements.

**Default Certificates**
| Certificate Name | Description |
|-----------------------------------|--------------------------------------------------|
| Relativity Secret Store | Certificate for Relativity Secret Store. |

**Properties In Custom JSON Related to Certificates**

| Property | Type | Description |
|----------------|----------|------------------------------------------------------------------|
| `enabled` | boolean | Enables or disables monitoring for certificates. |
| `include` | array | List of certificate objects to monitor. |
| `storeName` | string | Name of the certificate store (e.g., `"My"`). |
| `storeLocation`| string | Location of the store (e.g., `"LocalMachine"`). |
| `thumbprint` | string | Certificate thumbprint to identify the certificate. |

#### StoreLocation Enum Values

The `storeLocation` field specifies the location of the X.509 certificate store to use.

**Possible Values**

| Value | Description |
|---------------|----------------------------------------------------------------|
| CurrentUser | The X.509 certificate store is located in the current user's profile. |
| LocalMachine | The X.509 certificate store is located in the local computer's profile. |

#### StoreName Enum Values

The `storeName` field specifies the name of the Windows certificate store where the X.509 certificate is located.

**Possible Values**

| Value | Description |
|----------------------|-----------------------------------------------|
| AddressBook | Other people |
| AuthRoot | Third party trusted roots |
| CertificateAuthority | Intermediate CAs |
| Disallowed | Revoked certificates |
| My | Personal certificates |
| Root | Trusted root CAs |
| TrustedPeople | Trusted people (used in EFS) |
| TrustedPublisher | Trusted publishers (used in Authenticode) |

**Get Certificate Thumbprint**

Depending on the Store Location and Store Name, run the following command on the host. For `LocalMachine` and `My`, use:

```powershell
Get-ChildItem Cert:\LocalMachine\My
```

The command returns a list of certificates including their `thumbprint` and `subject`. Copy the `thumbprint` value for the certificate you want to monitor and use it in the custom JSON configuration. Adjust the command as needed based on the selected `storeName` and `storeLocation`.

## Configure Certificates

Certificates can be monitored at the "**hosts**", "**instance**", or "**installedProducts**" level.
For certificates to monitor, locate "**certificates**" under the desired section and update the configuration as below.

- `enabled` : Set to `true` to enable certificate monitoring.
- When configuring the `include` section, specify the `storeName`, `storeLocation`, and `thumbprint` for each certificate to be monitored.

**Example 1**: Monitoring two certificates from the LocalMachine\My store. The certificate is identified by its Thumbprint, which you can retrieve using the following PowerShell command:`Get-ChildItem Cert:\LocalMachine\My`

```json
{
"certificates": {
"enabled": true,
"include": [
{
"storeName": "My",
"storeLocation": "LocalMachine",
"thumbprint": "005501F9BA68A2ED7D9BD515B256F6298AEF7E5A"
},
{
"storeName": "My",
"storeLocation": "LocalMachine",
"thumbprint": "E62D7D4DD8D054072A7A58A577D500753A586C75"
}
]
}
}
```

### Verification in Kibana

- Navigate to Kibana Discover.
- Select `logs-*` Data View.
- Search for "The Environment Watch shared configuration object is not empty" which indicates that the EW Windows Service fetching values from the Custom JSON configuration successfully.

![](/resources/custom-json-images/environment-watch-shared-settings-not-empty-generic.png)
- Navigate to the Kibana certificates dashboard.
- Ensure that the certificates defined in the custom JSON configuration appear on the Kibana certificates dashboard. The example below demonstrates how a certificate specified in the custom JSON is successfully monitored and displayed on the certificates dashboard.

![](/resources/custom-json-images/certificate-json-example.png)

![](/resources/custom-json-images/certificate-dashboard-example.png)
Loading