---
title: Monitoring jobs for custom metrics
description: Monitoring job definitions allow DataRobot to pull calculated custom metric values from outside of DataRobot into the metric defined on the Custom Metrics tab.
section_name: MLOps
maturity: public-preview

---

# Monitoring jobs for custom metrics {: #monitoring-jobs-for-custom-metrics }

!!! info "Availability information"
    Monitoring jobs for custom metrics are off by default. Contact your DataRobot representative or administrator for information on enabling this feature.

    <b>Feature flag:</b> Enable Custom Metrics Job Definitions

Monitoring job definitions allow DataRobot to pull calculated custom metric values from outside of DataRobot into the custom metric defined on the [Custom Metrics](custom-metrics) tab, supporting custom metrics with external data sources. For example, you can create a monitoring job to connect to Snowflake, fetch custom metric data from the relevant Snowflake table, and send the data to DataRobot.

To create the monitoring jobs for custom metrics: 

1. Click **Deployments** and select a deployment from the inventory.

2. On the selected deployment's **Overview**, click **Job Definitions**.

3. On the **Job Definitions** page, click **Monitoring Jobs**, and then click **Add Job Definition**.

4. On the **New Monitoring Job Definition** page, configure the following options:

    ![](images/monitoring-job-custom-metrics.png)

    |                        | Field name |  Description  |
    |------------------------|------------|---------------|
    | ![](images/icon-1.png) | Monitoring job definition name | Enter the name of the monitoring job that you are creating for the deployment. |
    | ![](images/icon-2.png) | Monitoring data source | Set the [source type](#set-monitoring-data-source) and [define the connection](data-conn) for the data to be scored.  |
    | ![](images/icon-3.png) | Monitoring options | Configure [custom model monitoring options](#set-custom-model-monitoring-options).  |
    | ![](images/icon-4.png) | Jobs schedule | Configure whether to run the job immediately and whether to [schedule the job](#schedule-monitoring-jobs).|
    | ![](images/icon-5.png) | Save monitoring job definition | Click this button to save the job definition. The button changes to **Save and run monitoring job definition** if **Run this job immediately** is enabled. Note that this button is disabled if there are any validation errors. |

## Set monitoring data source {: #set-monitoring-data-source }

In the **Monitoring data source** section, select a **Source type** (called an [intake adapter](intake-options)) and complete the appropriate authentication workflow for the source type in the **Connection details** section. 

Select a connection type below to view field descriptions:

!!! note
    When browsing for connections, invalid adapters are not shown.

**Database connections**

* [JDBC](../../api/reference/batch-prediction-api/intake-options.html#jdbc-scoring)
    
**Cloud Storage Connections**
    
* [Azure](intake-options#azure-blob-storage-scoring)
* [GCP](intake-options#google-cloud-storage-scoring) (Google Cloud Platform Storage)
* [S3](intake-options#amazon-s3-scoring)

**Data Warehouse Connections**

* [BigQuery](intake-options#bigquery-scoring)
* [Snowflake](intake-options#snowflake-scoring)
* [Synapse](intake-options#synapse-scoring)

**Other**

* [AI Catalog](intake-options#ai-catalog-dataset-scoring) 

After you set your monitoring source, DataRobot validates that the data applies to the deployed model.

!!! note
    DataRobot validates that a data source is compatible with the model when possible, but not in all cases. DataRobot validates for AI Catalog, most JDBC connections, Snowflake, and Synapse.

## Set custom model monitoring options {: #set-custom-model-monitoring-options }

In the **Monitoring options** section, click **Custom Metrics** and configure the following options:

![](images/monitoring-options-custom-metrics.png)

Field             | Description
------------------|------------
Custom metric     | Select the custom metric you want to monitor from the current deployment.
Value column      | Select the column in the dataset containing the calculated values of the custom metric.
Timestamp column  | Select the column in the dataset containing a timestamp.
Date format       | Select the date format used by the timestamp column.


## Schedule monitoring jobs {: #schedule-monitoring-jobs }

You can schedule monitoring jobs to run automatically on a schedule. When outlining a monitoring job definition, enable **Run this job automatically on a schedule**, then specify the frequency (daily, hourly, monthly, etc.) and time of day to define the schedule on which the job runs.

![](images/batch-7.png)

For further granularity, select **Use advanced scheduler**. You can set the exact time (to the minute) you want to run the monitoring job.

![](images/batch-8.png)

After setting all applicable options, click **Save monitoring job definition**. 