> For the complete documentation index, see [llms.txt](https://academy.cegedim.cloud/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://academy.cegedim.cloud/monitoring/custom-check.md).

# Custom check

## Description

A monitoring check is an automated probe that periodically sends an HTTP request to one of your application URLs — exactly as a real user would — and verifies that the response is correct.

> 💡 Think of it as a dedicated robot that tests your application every few minutes, 24/7, and alerts you immediately if something goes wrong — **before your users notice**.

**Custom Check** is available in ITCare on any URL exposed via an Elastic Secured Endpoint (Load Balancer). **cegedim.cloud** operates and maintains the monitoring infrastructure. No agent or additional component is required on your application side.

Two check types are available:

* **Custom Check** — internal probe, included with the Load Balancer
* **External Custom Check** — external probes from the public internet, available as a paid option

|                     | Custom Check                    | External Custom Check                 |
| ------------------- | ------------------------------- | ------------------------------------- |
| **Source**          | Internal (within cegedim.cloud) | External (public internet)            |
| **Locations**       | 1 internal probe                | 🔵 Marseille (Azure) + 🟠 Paris (AWS) |
| **Frequency**       | Every \~10 min                  | Every 5 min                           |
| **Result**          | Global status                   | Per-location detailed output          |
| **24x7 Monitoring** | ✅ Option                        | ✅ Option                              |
| **Self-service**    | ✅                               | ✅                                     |

For more information, please visit the [Custom Check - Get started](https://code.cegedim.cloud/product-management/gitbook/english-documentation/-/tree/main/monitoring/custom-check/custom-check-get-started.md) page.

## Support Level

Both check types share the same support level management in ITCare. At creation, a check has no cegedim.cloud support. The support level can be adjusted on request through your SDM:

| Level          | Coverage            |
| -------------- | ------------------- |
| None           | Default at creation |
| Business hours | On request — SDM    |
| 24x7           | On request — SDM    |

## Billing

### Custom Check

**Included** in the Elastic Secured Endpoint (Load Balancer) pricing.

### External Custom Check

Paid option — billed per batch of 1,000 requests (2 requests every 5 minutes).

* Billing starts from the first check executed.
* Cost estimates available through your **SDM**.

## Technical Details

```mermaid
flowchart LR
    LB[Load Balancer\nElastic Secured Endpoint]

    LB --> URL1[URL 1\nhttps://app.example.com]
    LB --> URL2[URL 2\nhttps://api.example.com]
    LB --> URL3[URL 3\nhttps://auth.example.com]

    URL1 --> CC1[Custom Check\nAPPS_CHECK_URL_app]
    URL1 --> EC1[External Custom Check\nAPPS_CHECK_URL_app_ext]

    URL2 --> CC2[Custom Check\nAPPS_CHECK_URL_api]

    URL3 --> CC3[Custom Check\nAPPS_CHECK_URL_auth]
    URL3 --> EC3[External Custom Check\nAPPS_CHECK_URL_auth_ext]

    EC1 --> MRS1[Marseille - Azure]
    EC1 --> PAR1[Paris - AWS]

    EC3 --> MRS3[Marseille - Azure]
    EC3 --> PAR3[Paris - AWS]
```

### Features

This section lists the features available to the customer, as well as how to request or execute them:

|                  |                                                               |
| ---------------- | ------------------------------------------------------------- |
| **Self-service** | The customer can perform the action independently via ITCare. |
| **On request**   | The customer must open a support ticket.                      |

| Feature                         | Self-service | On request | Comments                                                                                                          |
| ------------------------------- | ------------ | ---------- | ----------------------------------------------------------------------------------------------------------------- |
| Create a Custom Check           | ✅            |            | ITCare → Resources → URLs → Actions → Add Custom Check                                                            |
| Create an External Custom Check | ✅            |            | Same interface                                                                                                    |
| Delete a check                  | ✅            |            |                                                                                                                   |
| Edit check parameters           | ✅            |            | Some attributes cannot be modified after creation — if the update is not possible, delete and recreate the check. |
| Adjust support level            | ✅            |            | Contact your SDM                                                                                                  |

### Check Naming

Checks created in ITCare follow this naming convention: APPS\_CHECK\_URL\_

This name is used as the alert identifier in ITCare monitoring views.

### Status & Results

Custom Check configuration allows you to define triggering thresholds based on the HTTP response code and/or the response body content of your application.

```mermaid
flowchart LR
    A[HTTP Request] --> B[Your application]
    B --> C[Response]
    C --> D[HTTP status code\n200 / 404 / 500...]
    C --> E[Response body content]
    D --> F[✅ OK]
    D --> G[❌ KO]
    E --> H[✅ OK]
    E --> I[❌ KO]
```

For External Custom Checks, results are available per location. If one location fails while the other succeeds, this indicates a **regional network issue** rather than an application failure.

A Critical status appears in ITCare within **9 minutes maximum** (5-min check cycle + polling + retry).


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://academy.cegedim.cloud/monitoring/custom-check.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
