/** * Autoscaling API * Use the Autoscaling API to dynamically scale compute resources to meet application requirements. For more information about autoscaling, see [Autoscaling](https://docs.oracle.com/iaas/Content/Compute/Tasks/autoscalinginstancepools.htm). For information about the Compute service, see [Compute](https://docs.oracle.com/iaas/Content/Compute/home.htm). * OpenAPI spec version: 20181001 * * * NOTE: This class is auto generated by OracleSDKGenerator. * Do not edit the class manually. * * Copyright (c) 2020, 2026, Oracle and/or its affiliates. All rights reserved. * This software is dual-licensed to you under the Universal Permissive License (UPL) 1.0 as shown at https://oss.oracle.com/licenses/upl or Apache License 2.0 as shown at http://www.apache.org/licenses/LICENSE-2.0. You may choose either license. */ import * as model from "../model"; /** * Metric details for triggering an autoscaling action based on a custom MQL query. * */ export interface CustomMetric extends model.MetricBase { /** * The Monitoring Query Language (MQL) expression to evaluate for the alarm. The Alarms feature of * the Monitoring service interprets results for each returned time series as Boolean values, * where zero represents false and a non-zero value represents true. A true value means that the trigger * rule condition has been met. The query must specify a metric, statistic, interval, and trigger * rule (threshold or absence). Supported values for interval: {@code 1m}-{@code 60m} (also {@code 1h}). You can optionally * specify dimensions and grouping functions. Supported grouping functions: {@code grouping()}, {@code groupBy()}. *

Example of threshold alarm: *

----- *

CpuUtilization[1m]{availabilityDomain=\"cumS:PHX-AD-1\"}.groupBy(availabilityDomain).percentile(0.9) > 85 *

----- * */ "query": string; /** * The namespace for the query. */ "namespace": string; /** * The resource group for the query. */ "resourceGroup"?: string; /** * The OCID of the compartment containing the metrics. */ "metricCompartmentId": string; "metricSource": string; } export declare namespace CustomMetric { function getJsonObj(obj: CustomMetric, isParentJsonObj?: boolean): object; const metricSource = "CUSTOM_QUERY"; function getDeserializedJsonObj(obj: CustomMetric, isParentJsonObj?: boolean): object; }