> 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 by asking a question.

Perform an HTTP GET request on the following URL with the `ask` and `goal` query parameters:

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

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is what the user is ultimately trying to achieve, the reason they need the answer. Sharing it helps GitBook give you a better, more relevant answer. A goal is most helpful when it describes the outcome the user wants rather than restating the question. For example, with `ask=how do I create an API token`, a goal like `automate deployments from our CI pipeline` lets GitBook tailor the answer to that use case.

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.
