Documentation ¶
Index ¶
- Variables
- type AutoTag
- func (me *AutoTag) Deprecated() string
- func (me *AutoTag) MarshalHCL(properties hcl.Properties) error
- func (me *AutoTag) MarshalJSON() ([]byte, error)
- func (me *AutoTag) Schema() map[string]*schema.Schema
- func (me *AutoTag) UnmarshalHCL(decoder hcl.Decoder) error
- func (me *AutoTag) UnmarshalJSON(data []byte) error
- func (me *AutoTag) Validate() []string
- type EntitySelectorBasedRule
- func (me *EntitySelectorBasedRule) MarshalHCL(properties hcl.Properties) error
- func (me *EntitySelectorBasedRule) MarshalJSON() ([]byte, error)
- func (me *EntitySelectorBasedRule) Schema() map[string]*schema.Schema
- func (me *EntitySelectorBasedRule) UnmarshalHCL(decoder hcl.Decoder) error
- func (me *EntitySelectorBasedRule) UnmarshalJSON(data []byte) error
- type PropagationType
- type Rule
- type RuleType
Constants ¶
This section is empty.
Variables ¶
View Source
var PropagationTypes = struct { AzureToPg PropagationType AzureToService PropagationType HostToProcessGroupInstance PropagationType ProcessGroupToHost PropagationType ProcessGroupToService PropagationType ServiceToHostLike PropagationType ServiceToProcessGroupLike PropagationType }{ "AZURE_TO_PG", "AZURE_TO_SERVICE", "HOST_TO_PROCESS_GROUP_INSTANCE", "PROCESS_GROUP_TO_HOST", "PROCESS_GROUP_TO_SERVICE", "SERVICE_TO_HOST_LIKE", "SERVICE_TO_PROCESS_GROUP_LIKE", }
PropagationTypes offers the known enum values
View Source
var RuleTypes = struct { Application RuleType AWSApplicationLoadBalancer RuleType AWSClassicLoadBalancer RuleType AWSNetworkLoadBalancer RuleType AWSRelationalDatabaseService RuleType Azure RuleType CustomApplication RuleType CustomDevice RuleType DCRumApplication RuleType ESXIHost RuleType ExternalSyntheticTest RuleType Host RuleType HTTPCheck RuleType MobileApplication RuleType ProcessGroup RuleType Service RuleType SyntheticTest RuleType }{ "APPLICATION", "AWS_APPLICATION_LOAD_BALANCER", "AWS_CLASSIC_LOAD_BALANCER", "AWS_NETWORK_LOAD_BALANCER", "AWS_RELATIONAL_DATABASE_SERVICE", "AZURE", "CUSTOM_APPLICATION", "CUSTOM_DEVICE", "DCRUM_APPLICATION", "ESXI_HOST", "EXTERNAL_SYNTHETIC_TEST", "HOST", "HTTP_CHECK", "MOBILE_APPLICATION", "PROCESS_GROUP", "SERVICE", "SYNTHETIC_TEST", }
RuleTypes offers the known enum values
Functions ¶
This section is empty.
Types ¶
type AutoTag ¶
type AutoTag struct { // ID *string `json:"id,omitempty"` // The ID of the auto-tag. Name string `json:"name"` // The name of the auto-tag, which is applied to entities. Additionally you can specify a **valueFormat** in the tag rule. In that case the tag is used in the `name:valueFormat` format. For example you can extend the `Infrastructure` tag to `Infrastructure:Windows` and `Infrastructure:Linux`. Description *string `json:"description"` // The description of the auto-tag Rules []*Rule `json:"rules,omitempty"` // The list of rules for tag usage. When there are multiple rules, the OR logic applies. EntitySelectorBasedRules []*EntitySelectorBasedRule `json:"entitySelectorBasedRules,omitempty"` // A list of entity-selector based rules for auto tagging usage.\n\nIf several rules are specified, the **OR** logic applies Unknowns map[string]json.RawMessage `json:"-"` }
AutoTag Configuration of an auto-tag. It defines the conditions of tag usage and the tag value.
func (*AutoTag) Deprecated ¶ added in v1.36.0
func (*AutoTag) MarshalHCL ¶
func (me *AutoTag) MarshalHCL(properties hcl.Properties) error
func (*AutoTag) MarshalJSON ¶
func (*AutoTag) UnmarshalJSON ¶
type EntitySelectorBasedRule ¶
type EntitySelectorBasedRule struct { Enabled *bool `json:"enabled"` // The rule is enabled (`true`) or disabled (`false`). Selector string `json:"entitySelector"` // The entity selector string, by which the entities are selected ValueFormat *string `json:"valueFormat"` // The value of the entity-selector-based auto-tag. If specified, the tag is used in the `name:valueFormat` format. \n\nFor example, you can extend the `Infrastructure` tag to `Infrastructure:Windows` and `Infrastructure:Linux` Normalization *string `json:"normalization"` // Changes applied to the value after applying the value format. Default is LEAVE_TEXT_AS_IS Unknowns map[string]json.RawMessage `json:"-"` }
EntitySelectorBasedRule The entity-selector-based rule for auto tag usage. It allows tagging entities via an entity selector
func (*EntitySelectorBasedRule) MarshalHCL ¶
func (me *EntitySelectorBasedRule) MarshalHCL(properties hcl.Properties) error
func (*EntitySelectorBasedRule) MarshalJSON ¶
func (me *EntitySelectorBasedRule) MarshalJSON() ([]byte, error)
func (*EntitySelectorBasedRule) Schema ¶
func (me *EntitySelectorBasedRule) Schema() map[string]*schema.Schema
func (*EntitySelectorBasedRule) UnmarshalHCL ¶
func (me *EntitySelectorBasedRule) UnmarshalHCL(decoder hcl.Decoder) error
func (*EntitySelectorBasedRule) UnmarshalJSON ¶
func (me *EntitySelectorBasedRule) UnmarshalJSON(data []byte) error
type Rule ¶
type Rule struct { Type RuleType `json:"type"` // Type of entities to which the rule applies. Enabled bool `json:"enabled"` // Tag rule is enabled (`true`) or disabled (`false`). PropagationTypes []PropagationType `json:"propagationTypes,omitempty"` // How to apply the tag to underlying entities: * `SERVICE_TO_PROCESS_GROUP_LIKE`: Apply to underlying process groups of matching services. * `SERVICE_TO_HOST_LIKE`: Apply to underlying hosts 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 the process groups. * `HOST_TO_PROCESS_GROUP_INSTANCE`: Apply to processes running on matching hosts. * `AZURE_TO_PG`: Apply to process groups connected to matching Azure entities. * `AZURE_TO_SERVICE`: Apply to services provided by matching Azure entities. Conditions []*entityruleengine.Condition `json:"conditions"` // A list of matching rules for the auto-tag. The tag applies only when **all** conditions are fulfilled. ValueFormat *string `json:"valueFormat,omitempty"` // The value of the auto-tag. If specified, the tag is used in the `name:valueFormat` format. For example, you can extend the `Infrastructure` tag to `Infrastructure:Windows` and `Infrastructure:Linux`. You can use the following placeholders here: * `{AwsAutoScalingGroup:Name}` * `{AwsAvailabilityZone:Name}` * `{AwsElasticLoadBalancer:Name}` * `{AwsRelationalDatabaseService:DBName}` * `{AwsRelationalDatabaseService:Endpoint}` * `{AwsRelationalDatabaseService:Engine}` * `{AwsRelationalDatabaseService:InstanceClass}` * `{AwsRelationalDatabaseService:Name}` * `{AwsRelationalDatabaseService:Port}` * `{AzureRegion:Name}` * `{AzureScaleSet:Name}` * `{AzureVm:Name}` * `{CloudFoundryOrganization:Name}` * `{CustomDevice:DetectedName}` * `{CustomDevice:DnsName}` * `{CustomDevice:IpAddress}` * `{CustomDevice:Port}` * `{DockerContainerGroupInstance:ContainerName}` * `{DockerContainerGroupInstance:FullImageName}` * `{DockerContainerGroupInstance:ImageVersion}` * `{DockerContainerGroupInstance:StrippedImageName}` * `{ESXIHost:HardwareModel}` * `{ESXIHost:HardwareVendor}` * `{ESXIHost:Name}` * `{ESXIHost:ProductName}` * `{ESXIHost:ProductVersion}` * `{Ec2Instance:AmiId}` * `{Ec2Instance:BeanstalkEnvironmentName}` * `{Ec2Instance:InstanceId}` * `{Ec2Instance:InstanceType}` * `{Ec2Instance:LocalHostName}` * `{Ec2Instance:Name}` * `{Ec2Instance:PublicHostName}` * `{Ec2Instance:SecurityGroup}` * `{GoogleComputeInstance:Id}` * `{GoogleComputeInstance:IpAddresses}` * `{GoogleComputeInstance:MachineType}` * `{GoogleComputeInstance:Name}` * `{GoogleComputeInstance:ProjectId}` * `{GoogleComputeInstance:Project}` * `{Host:AWSNameTag}` * `{Host:AixLogicalCpuCount}` * `{Host:AzureHostName}` * `{Host:AzureSiteName}` * `{Host:BoshDeploymentId}` * `{Host:BoshInstanceId}` * `{Host:BoshInstanceName}` * `{Host:BoshName}` * `{Host:BoshStemcellVersion}` * `{Host:CpuCores}` * `{Host:DetectedName}` * `{Host:Environment:AppName}` * `{Host:Environment:BoshReleaseVersion}` * `{Host:Environment:Environment}` * `{Host:Environment:Link}` * `{Host:Environment:Organization}` * `{Host:Environment:Owner}` * `{Host:Environment:Support}` * `{Host:IpAddress}` * `{Host:LogicalCpuCores}` * `{Host:OneAgentCustomHostName}` * `{Host:OperatingSystemVersion}` * `{Host:PaasMemoryLimit}` * `{HostGroup:Name}` * `{KubernetesCluster:Name}` * `{KubernetesNode:DetectedName}` * `{OpenstackAvailabilityZone:Name}` * `{OpenstackZone:Name}` * `{OpenstackComputeNode:Name}` * `{OpenstackProject:Name}` * `{OpenstackVm:UnstanceType}` * `{OpenstackVm:Name}` * `{OpenstackVm:SecurityGroup}` * `{ProcessGroup:AmazonECRImageAccountId}` * `{ProcessGroup:AmazonECRImageRegion}` * `{ProcessGroup:AmazonECSCluster}` * `{ProcessGroup:AmazonECSContainerName}` * `{ProcessGroup:AmazonECSFamily}` * `{ProcessGroup:AmazonECSRevision}` * `{ProcessGroup:AmazonLambdaFunctionName}` * `{ProcessGroup:AmazonRegion}` * `{ProcessGroup:ApacheConfigPath}` * `{ProcessGroup:ApacheSparkMasterIpAddress}` * `{ProcessGroup:AspDotNetCoreApplicationPath}` * `{ProcessGroup:AspDotNetCoreApplicationPath}` * `{ProcessGroup:AzureHostName}` * `{ProcessGroup:AzureSiteName}` * `{ProcessGroup:CassandraClusterName}` * `{ProcessGroup:CatalinaBase}` * `{ProcessGroup:CatalinaHome}` * `{ProcessGroup:CloudFoundryAppId}` * `{ProcessGroup:CloudFoundryAppName}` * `{ProcessGroup:CloudFoundryInstanceIndex}` * `{ProcessGroup:CloudFoundrySpaceId}` * `{ProcessGroup:CloudFoundrySpaceName}` * `{ProcessGroup:ColdFusionJvmConfigFile}` * `{ProcessGroup:ColdFusionServiceName}` * `{ProcessGroup:CommandLineArgs}` * `{ProcessGroup:DetectedName}` * `{ProcessGroup:DotNetCommandPath}` * `{ProcessGroup:DotNetCommand}` * `{ProcessGroup:DotNetClusterId}` * `{ProcessGroup:DotNetNodeId}` * `{ProcessGroup:ElasticsearchClusterName}` * `{ProcessGroup:ElasticsearchNodeName}` * `{ProcessGroup:EquinoxConfigPath}` * `{ProcessGroup:ExeName}` * `{ProcessGroup:ExePath}` * `{ProcessGroup:GlassFishDomainName}` * `{ProcessGroup:GlassFishInstanceName}` * `{ProcessGroup:GoogleAppEngineInstance}` * `{ProcessGroup:GoogleAppEngineService}` * `{ProcessGroup:GoogleCloudProject}` * `{ProcessGroup:HybrisBinDirectory}` * `{ProcessGroup:HybrisConfigDirectory}` * `{ProcessGroup:HybrisConfigDirectory}` * `{ProcessGroup:HybrisDataDirectory}` * `{ProcessGroup:IBMCicsRegion}` * `{ProcessGroup:IBMCtgName}` * `{ProcessGroup:IBMImsConnectRegion}` * `{ProcessGroup:IBMImsControlRegion}` * `{ProcessGroup:IBMImsMessageProcessingRegion}` * `{ProcessGroup:IBMImsSoapGwName}` * `{ProcessGroup:IBMIntegrationNodeName}` * `{ProcessGroup:IBMIntegrationServerName}` * `{ProcessGroup:IISAppPool}` * `{ProcessGroup:IISRoleName}` * `{ProcessGroup:JbossHome}` * `{ProcessGroup:JbossMode}` * `{ProcessGroup:JbossServerName}` * `{ProcessGroup:JavaJarFile}` * `{ProcessGroup:JavaJarPath}` * `{ProcessGroup:JavaMainCLass}` * `{ProcessGroup:KubernetesBasePodName}` * `{ProcessGroup:KubernetesContainerName}` * `{ProcessGroup:KubernetesFullPodName}` * `{ProcessGroup:KubernetesNamespace}` * `{ProcessGroup:KubernetesPodUid}` * `{ProcessGroup:MssqlInstanceName}` * `{ProcessGroup:NodeJsAppBaseDirectory}` * `{ProcessGroup:NodeJsAppName}` * `{ProcessGroup:NodeJsScriptName}` * `{ProcessGroup:OracleSid}` * `{ProcessGroup:PHPScriptPath}` * `{ProcessGroup:PHPWorkingDirectory}` * `{ProcessGroup:Ports}` * `{ProcessGroup:RubyAppRootPath}` * `{ProcessGroup:RubyScriptPath}` * `{ProcessGroup:SoftwareAGInstallRoot}` * `{ProcessGroup:SoftwareAGProductPropertyName}` * `{ProcessGroup:SpringBootAppName}` * `{ProcessGroup:SpringBootProfileName}` * `{ProcessGroup:SpringBootStartupClass}` * `{ProcessGroup:TIBCOBusinessWorksAppNodeName}` * `{ProcessGroup:TIBCOBusinessWorksAppSpaceName}` * `{ProcessGroup:TIBCOBusinessWorksCeAppName}` * `{ProcessGroup:TIBCOBusinessWorksCeVersion}` * `{ProcessGroup:TIBCOBusinessWorksDomainName}` * `{ProcessGroup:TIBCOBusinessWorksEnginePropertyFilePath}` * `{ProcessGroup:TIBCOBusinessWorksEnginePropertyFile}` * `{ProcessGroup:TIBCOBusinessWorksHome}` * `{ProcessGroup:VarnishInstanceName}` * `{ProcessGroup:WebLogicClusterName}` * `{ProcessGroup:WebLogicDomainName}` * `{ProcessGroup:WebLogicHome}` * `{ProcessGroup:WebLogicName}` * `{ProcessGroup:WebSphereCellName}` * `{ProcessGroup:WebSphereClusterName}` * `{ProcessGroup:WebSphereNodeName}` * `{ProcessGroup:WebSphereServerName}` * `{ProcessGroup:ActorSystem}` * `{Service:STGServerName}` * `{Service:DatabaseHostName}` * `{Service:DatabaseName}` * `{Service:DatabaseVendor}` * `{Service:DetectedName}` * `{Service:EndpointPath}` * `{Service:EndpointPathGatewayUrl}` * `{Service:IIBApplicationName}` * `{Service:MessageListenerClassName}` * `{Service:Port}` * `{Service:PublicDomainName}` * `{Service:RemoteEndpoint}` * `{Service:RemoteName}` * `{Service:WebApplicationId}` * `{Service:WebContextRoot}` * `{Service:WebServerName}` * `{Service:WebServiceNamespace}` * `{Service:WebServiceName}` * `{VmwareDatacenter:Name}` * `{VmwareVm:Name}` Normalization *string `json:"normalization,omitempty"` // Changes applied to the value after applying the value format. Default is LEAVE_TEXT_AS_IS Unknowns map[string]json.RawMessage `json:"-"` }
Rule A rule for the auto-tag.
Defines the conditions of tag usage.
func (*Rule) MarshalHCL ¶
func (me *Rule) MarshalHCL(properties hcl.Properties) error
func (*Rule) MarshalJSON ¶
func (*Rule) UnmarshalJSON ¶
Click to show internal directories.
Click to hide internal directories.