/** * Dynatrace Configuration API * Documentation of the Dynatrace Configuration API. Refer to the [help page](https://www.dynatrace.com/support/help/shortlink/config-api) to read about use-cases and examples. Notes about compatibility: * Operations marked as early adopter or preview may be changed in non-compatible ways, although we try to avoid this. * We may add new enum constants without incrementing the API version; thus, clients need to handle unknown enum constants gracefully. * * The version of the OpenAPI document: 1.0 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import { RequestFile } from '../api'; import { EntityRuleEngineCondition } from './entityRuleEngineCondition'; /** * The rule of the management zone usage. It defines how the management zone applies. Each rule is evaluated independently of all other rules. */ export class ManagementZoneRule { /** * The type of Dynatrace entities the management zone can be applied to. */ 'type': ManagementZoneRule.TypeEnum; /** * The rule is enabled (`true`) or disabled (`false`). */ 'enabled': boolean; /** * How to apply the management zone to underlying entities: * `SERVICE_TO_HOST_LIKE`: Apply to underlying hosts of matching services. * `SERVICE_TO_PROCESS_GROUP_LIKE`: Apply to underlying process groups of matching services. * `PROCESS_GROUP_TO_HOST`: Apply to underlying hosts of matching process groups. * `PROCESS_GROUP_TO_SERVICE`: Apply to all services provided by matching process groups. * `HOST_TO_PROCESS_GROUP_INSTANCE`: Apply to processes running on matching hosts. * `CUSTOM_DEVICE_GROUP_TO_CUSTOM_DEVICE`: Apply to custom devices in matching custom device groups. * `AZURE_TO_PG`: Apply to process groups connected to matching Azure entities. * `AZURE_TO_SERVICE`: Apply to services provided by matching Azure entities. */ 'propagationTypes'?: Array; /** * A list of matching rules for the management zone. The management zone applies only if **all** conditions are fulfilled. */ 'conditions': Array; static discriminator: string | undefined = undefined; static attributeTypeMap: Array<{name: string, baseName: string, type: string}> = [ { "name": "type", "baseName": "type", "type": "ManagementZoneRule.TypeEnum" }, { "name": "enabled", "baseName": "enabled", "type": "boolean" }, { "name": "propagationTypes", "baseName": "propagationTypes", "type": "Array" }, { "name": "conditions", "baseName": "conditions", "type": "Array" } ]; static getAttributeTypeMap() { return ManagementZoneRule.attributeTypeMap; } } export namespace ManagementZoneRule { export enum TypeEnum { APPMONSERVER = 'APPMON_SERVER', APPMONSYSTEMPROFILE = 'APPMON_SYSTEM_PROFILE', AWSACCOUNT = 'AWS_ACCOUNT', AWSAPPLICATIONLOADBALANCER = 'AWS_APPLICATION_LOAD_BALANCER', AWSAUTOSCALINGGROUP = 'AWS_AUTO_SCALING_GROUP', AWSCLASSICLOADBALANCER = 'AWS_CLASSIC_LOAD_BALANCER', AWSNETWORKLOADBALANCER = 'AWS_NETWORK_LOAD_BALANCER', AWSRELATIONALDATABASESERVICE = 'AWS_RELATIONAL_DATABASE_SERVICE', AZURE = 'AZURE', BROWSERMONITOR = 'BROWSER_MONITOR', CLOUDAPPLICATION = 'CLOUD_APPLICATION', CLOUDAPPLICATIONNAMESPACE = 'CLOUD_APPLICATION_NAMESPACE', CLOUDFOUNDRYFOUNDATION = 'CLOUD_FOUNDRY_FOUNDATION', CUSTOMAPPLICATION = 'CUSTOM_APPLICATION', CUSTOMDEVICE = 'CUSTOM_DEVICE', CUSTOMDEVICEGROUP = 'CUSTOM_DEVICE_GROUP', DATACENTERSERVICE = 'DATA_CENTER_SERVICE', ENTERPRISEAPPLICATION = 'ENTERPRISE_APPLICATION', ESXIHOST = 'ESXI_HOST', EXTERNALMONITOR = 'EXTERNAL_MONITOR', HOST = 'HOST', HOSTGROUP = 'HOST_GROUP', HTTPMONITOR = 'HTTP_MONITOR', KUBERNETESCLUSTER = 'KUBERNETES_CLUSTER', KUBERNETESNODE = 'KUBERNETES_NODE', MOBILEAPPLICATION = 'MOBILE_APPLICATION', OPENSTACKACCOUNT = 'OPENSTACK_ACCOUNT', PROCESSGROUP = 'PROCESS_GROUP', SERVICE = 'SERVICE', WEBAPPLICATION = 'WEB_APPLICATION' } export enum PropagationTypesEnum { AZURETOPG = 'AZURE_TO_PG', AZURETOSERVICE = 'AZURE_TO_SERVICE', CUSTOMDEVICEGROUPTOCUSTOMDEVICE = 'CUSTOM_DEVICE_GROUP_TO_CUSTOM_DEVICE', HOSTTOPROCESSGROUPINSTANCE = 'HOST_TO_PROCESS_GROUP_INSTANCE', PROCESSGROUPTOHOST = 'PROCESS_GROUP_TO_HOST', PROCESSGROUPTOSERVICE = 'PROCESS_GROUP_TO_SERVICE', SERVICETOHOSTLIKE = 'SERVICE_TO_HOST_LIKE', SERVICETOPROCESSGROUPLIKE = 'SERVICE_TO_PROCESS_GROUP_LIKE' } }