Policy types for @turbot/servicenow-gcp-monitoring

GCP > Monitoring > Alert Policy > ServiceNow

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/alertPolicyServiceNow
Targets

GCP > Monitoring > Alert Policy > ServiceNow > Configuration Item

Synchronize the data for the GCP > Monitoring > Alert Policy based on the policies GCP > Monitoring > Alert Policy > ServiceNow > Configuration Item > *

The Configuration Item control is responsible for automatically synchronizing records in a designated ServiceNow table, maintaining an up-to-date reflection of the GCP > Monitoring > Alert Policy information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/alertPolicyServiceNowConfigurationItem
Valid Value
[
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
],
"example": [
"Skip"
],
"default": "Skip"
}

GCP > Monitoring > Alert Policy > ServiceNow > Configuration Item > Record

The policy facilitates the accurate representation of cloud resource within the ServiceNow environment, ensuring that critical data is effectively mapped and managed. Attribute of an GCP > Monitoring > Alert Policy is systematically mapped to a specific column in a ServiceNow table.

The policy allows enabling organizations to select and map only those attributes that are most relevant to their operational needs. It significantly reduces the manual effort involved in data transfer and minimizes the risk of errors, thereby enhancing the overall efficiency of data management.

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/alertPolicyServiceNowConfigurationItemRecord
Default Template Input
"{\n resource: alertPolicy{\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"alert_policy_name: {{ $.resource.data.name | dump | safe }}\nalert_strategy: {{ $.resource.data.alertStrategy | dump | safe }}\ncombiner: {{ $.resource.data.combiner | dump | safe }}\nconditions: {{ $.resource.data.conditions | dump | safe }}\ncreation_record: {{ $.resource.data.creationRecord | dump | safe }}\ndisplay_name: {{ $.resource.data.displayName | dump | safe }}\ndocumentation: {{ $.resource.data.documentation | dump | safe }}\nenabled: {{ $.resource.data.enabled | dump | safe }}\nmutation_record: {{ $.resource.data.mutationRecord | dump | safe }}\nnotification_channels: {{ $.resource.data.notificationChannels | dump | safe }}\nproject: {{ $.resource.metadata.gcp.projectId | dump | safe }}\ntags: {{ $.resource.turbot.tags | dump | safe }}\nuser_labels: {{ $.resource.data.userLabels | dump | safe }}\nvalidity: {{ $.resource.data.validity | dump | safe }}\n"
Schema
{
"type": "object"
}

GCP > Monitoring > Alert Policy > ServiceNow > Configuration Item > Table Definition

This policy specifically allows users to define two key aspects: the name of the ServiceNow table where the GCP > Monitoring > Alert Policy data will be stored, and the details of the columns used for archiving purposes.

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/alertPolicyServiceNowConfigurationItemTableDefinition
Default Template Input
[
"{\n serviceNowInstance: resources(filter: \"resourceTypeId:tmod:@turbot/servicenow#/resource/types/instance level:self limit:1\") {\n items {\n turbot {\n id\n }\n }\n }\n}\n",
"{\n tableDefinition: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow-gcp-monitoring#/policy/types/alertPolicyServiceNowTableDefinition resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n applicationScope: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow#/policy/types/serviceNowApplicationScope resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"tableName: "{%- if $.applicationScope.items | length == 0 or $.tableDefinition.items | length == 0 %} {%- else %}{{$.applicationScope.items[0].value}}_{{$.tableDefinition.items[0].value.table.name | lower}}{% endif %}"\n"
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"tableName"
],
"properties": {
"tableName": {
"type": "string"
},
"archiveColumns": {
"type": "object"
}
}
}

GCP > Monitoring > Alert Policy > ServiceNow > Table

Configure a Table for GCP > Monitoring > Alert Policy resource type in ServiceNow via the GCP > Monitoring > Alert Policy > ServiceNow > Table > * policies.

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/alertPolicyServiceNowTable
Valid Value
[
"Skip",
"Check: Configured",
"Enforce: Configured"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Configured",
"Enforce: Configured"
],
"example": [
"Skip"
],
"default": "Skip"
}

GCP > Monitoring > Alert Policy > ServiceNow > Table > Definition

The policy enables the definition of ServiceNow table properties, including its name and the base table from which it extends, and details the specific columns required for representing GCP > Monitoring > Alert Policy data.

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/alertPolicyServiceNowTableDefinition
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"table",
"columns"
],
"properties": {
"table": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string"
},
"extendsTable": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
}
}
},
"columns": {
"type": "array",
"description": "An array of columns with their mappings to the CMDB.",
"default": [],
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the column in the table.",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string",
"description": "The label for the column."
},
"type": {
"description": "The data type of the column.",
"type": "string"
},
"size": {
"type": "integer",
"description": "The length for data type."
}
}
}
}
},
"default": {
"table": {
"name": "guardrails_gcp_monitoring_alertpolicy",
"label": "GCP > Monitoring > Alert Policy",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "alert_policy_name",
"label": "Name"
},
{
"name": "alert_strategy",
"label": "Alert Strategy",
"type": "string",
"size": 1000
},
{
"name": "combiner",
"label": "Combiner"
},
{
"name": "conditions",
"label": "Conditions",
"type": "string",
"size": 1000
},
{
"name": "creation_record",
"label": "Creation Record",
"type": "string",
"size": 1000
},
{
"name": "display_name",
"label": "Display Name"
},
{
"name": "documentation",
"label": "Documentation",
"type": "string",
"size": 1000
},
{
"name": "enabled",
"label": "Enabled",
"type": "boolean"
},
{
"name": "mutation_record",
"label": "Mutation Record",
"type": "string",
"size": 1000
},
{
"name": "notification_channels",
"label": "Notification Channels",
"type": "string",
"size": 1000
},
{
"name": "project",
"label": "Project"
},
{
"name": "tags",
"label": "Tags",
"type": "string",
"size": 1000
},
{
"name": "user_labels",
"label": "User Labels",
"type": "string",
"size": 1000
},
{
"name": "validity",
"label": "Validity",
"type": "string",
"size": 1000
}
]
}
}

GCP > Monitoring > Group > ServiceNow

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/groupServiceNow
Targets

GCP > Monitoring > Group > ServiceNow > Configuration Item

Synchronize the data for the GCP > Monitoring > Group based on the policies GCP > Monitoring > Group > ServiceNow > Configuration Item > *

The Configuration Item control is responsible for automatically synchronizing records in a designated ServiceNow table, maintaining an up-to-date reflection of the GCP > Monitoring > Group information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/groupServiceNowConfigurationItem
Valid Value
[
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
],
"example": [
"Skip"
],
"default": "Skip"
}

GCP > Monitoring > Group > ServiceNow > Configuration Item > Record

The policy facilitates the accurate representation of cloud resource within the ServiceNow environment, ensuring that critical data is effectively mapped and managed. Attribute of an GCP > Monitoring > Group is systematically mapped to a specific column in a ServiceNow table.

The policy allows enabling organizations to select and map only those attributes that are most relevant to their operational needs. It significantly reduces the manual effort involved in data transfer and minimizes the risk of errors, thereby enhancing the overall efficiency of data management.

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/groupServiceNowConfigurationItemRecord
Default Template Input
"{\n resource: group{\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"display_name: {{ $.resource.data.displayName | dump | safe }}\nfilter: {{ $.resource.data.filter | dump | safe }}\ngroup_name: {{ $.resource.data.name | dump | safe }}\nis_cluster: {{ $.resource.data.isCluster | dump | safe }}\nparent_name: {{ $.resource.data.parentName | dump | safe }}\nproject: {{ $.resource.metadata.gcp.projectId | dump | safe }}\n"
Schema
{
"type": "object"
}

GCP > Monitoring > Group > ServiceNow > Configuration Item > Table Definition

This policy specifically allows users to define two key aspects: the name of the ServiceNow table where the GCP > Monitoring > Group data will be stored, and the details of the columns used for archiving purposes.

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/groupServiceNowConfigurationItemTableDefinition
Default Template Input
[
"{\n serviceNowInstance: resources(filter: \"resourceTypeId:tmod:@turbot/servicenow#/resource/types/instance level:self limit:1\") {\n items {\n turbot {\n id\n }\n }\n }\n}\n",
"{\n tableDefinition: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow-gcp-monitoring#/policy/types/groupServiceNowTableDefinition resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n applicationScope: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow#/policy/types/serviceNowApplicationScope resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"tableName: "{%- if $.applicationScope.items | length == 0 or $.tableDefinition.items | length == 0 %} {%- else %}{{$.applicationScope.items[0].value}}_{{$.tableDefinition.items[0].value.table.name | lower}}{% endif %}"\n"
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"tableName"
],
"properties": {
"tableName": {
"type": "string"
},
"archiveColumns": {
"type": "object"
}
}
}

GCP > Monitoring > Group > ServiceNow > Table

Configure a Table for GCP > Monitoring > Group resource type in ServiceNow via the GCP > Monitoring > Group > ServiceNow > Table > * policies.

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/groupServiceNowTable
Valid Value
[
"Skip",
"Check: Configured",
"Enforce: Configured"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Configured",
"Enforce: Configured"
],
"example": [
"Skip"
],
"default": "Skip"
}

GCP > Monitoring > Group > ServiceNow > Table > Definition

The policy enables the definition of ServiceNow table properties, including its name and the base table from which it extends, and details the specific columns required for representing GCP > Monitoring > Group data.

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/groupServiceNowTableDefinition
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"table",
"columns"
],
"properties": {
"table": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string"
},
"extendsTable": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
}
}
},
"columns": {
"type": "array",
"description": "An array of columns with their mappings to the CMDB.",
"default": [],
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the column in the table.",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string",
"description": "The label for the column."
},
"type": {
"description": "The data type of the column.",
"type": "string"
},
"size": {
"type": "integer",
"description": "The length for data type."
}
}
}
}
},
"default": {
"table": {
"name": "guardrails_gcp_monitoring_group",
"label": "GCP > Monitoring > Group",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "display_name",
"label": "Display Name"
},
{
"name": "filter",
"label": "Filter"
},
{
"name": "group_name",
"label": "Name"
},
{
"name": "is_cluster",
"label": "Is Cluster",
"type": "boolean"
},
{
"name": "parent_name",
"label": "Parent Name"
},
{
"name": "project",
"label": "Project"
}
]
}
}

GCP > Monitoring > Notification Channel > ServiceNow

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/notificationChannelServiceNow
Targets

GCP > Monitoring > Notification Channel > ServiceNow > Configuration Item

Synchronize the data for the GCP > Monitoring > Notification Channel based on the policies GCP > Monitoring > Notification Channel > ServiceNow > Configuration Item > *

The Configuration Item control is responsible for automatically synchronizing records in a designated ServiceNow table, maintaining an up-to-date reflection of the GCP > Monitoring > Notification Channel information within the ServiceNow CMDB.

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/notificationChannelServiceNowConfigurationItem
Valid Value
[
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Archived",
"Check: Deleted",
"Check: Sync",
"Enforce: Archived",
"Enforce: Deleted",
"Enforce: Sync",
"Enforce: Sync, archive on delete"
],
"example": [
"Skip"
],
"default": "Skip"
}

GCP > Monitoring > Notification Channel > ServiceNow > Configuration Item > Record

The policy facilitates the accurate representation of cloud resource within the ServiceNow environment, ensuring that critical data is effectively mapped and managed. Attribute of an GCP > Monitoring > Notification Channel is systematically mapped to a specific column in a ServiceNow table.

The policy allows enabling organizations to select and map only those attributes that are most relevant to their operational needs. It significantly reduces the manual effort involved in data transfer and minimizes the risk of errors, thereby enhancing the overall efficiency of data management.

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/notificationChannelServiceNowConfigurationItemRecord
Default Template Input
"{\n resource: notificationChannel{\n data\n metadata\n turbot {\n akas\n id\n tags\n title\n }\n }\n}\n"
Default Template
"creation_record: {{ $.resource.data.creationRecord | dump | safe }}\ndescription: {{ $.resource.data.description | dump | safe }}\ndisplay_name: {{ $.resource.data.displayName | dump | safe }}\nenabled: {{ $.resource.data.enabled | dump | safe }}\nlabels: {{ $.resource.data.labels | dump | safe }}\nmutation_records: {{ $.resource.data.mutationRecords | dump | safe }}\nnotification_channel_name: {{ $.resource.data.name | dump | safe }}\nproject: {{ $.resource.data.project | dump | safe }}\nself_link: {{ $.resource.data.selfLink | dump | safe }}\ntags: {{ $.resource.turbot.tags | dump | safe }}\ntype: {{ $.resource.data.type | dump | safe }}\nuser_labels: {{ $.resource.data.userLabels | dump | safe }}\nverification_status: {{ $.resource.data.verificationStatus | dump | safe }}\n"
Schema
{
"type": "object"
}

GCP > Monitoring > Notification Channel > ServiceNow > Configuration Item > Table Definition

This policy specifically allows users to define two key aspects: the name of the ServiceNow table where the GCP > Monitoring > Notification Channel data will be stored, and the details of the columns used for archiving purposes.

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/notificationChannelServiceNowConfigurationItemTableDefinition
Default Template Input
[
"{\n serviceNowInstance: resources(filter: \"resourceTypeId:tmod:@turbot/servicenow#/resource/types/instance level:self limit:1\") {\n items {\n turbot {\n id\n }\n }\n }\n}\n",
"{\n tableDefinition: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow-gcp-monitoring#/policy/types/notificationChannelServiceNowTableDefinition resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n applicationScope: policyValues(filter: \"policyTypeId:tmod:@turbot/servicenow#/policy/types/serviceNowApplicationScope resourceId:{{$.serviceNowInstance.items[0].turbot.id}} level:self\") {\n items {\n value\n }\n }\n}\n"
]
Default Template
"tableName: "{%- if $.applicationScope.items | length == 0 or $.tableDefinition.items | length == 0 %} {%- else %}{{$.applicationScope.items[0].value}}_{{$.tableDefinition.items[0].value.table.name | lower}}{% endif %}"\n"
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"tableName"
],
"properties": {
"tableName": {
"type": "string"
},
"archiveColumns": {
"type": "object"
}
}
}

GCP > Monitoring > Notification Channel > ServiceNow > Table

Configure a Table for GCP > Monitoring > Notification Channel resource type in ServiceNow via the GCP > Monitoring > Notification Channel > ServiceNow > Table > * policies.

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/notificationChannelServiceNowTable
Valid Value
[
"Skip",
"Check: Configured",
"Enforce: Configured"
]
Schema
{
"type": "string",
"enum": [
"Skip",
"Check: Configured",
"Enforce: Configured"
],
"example": [
"Skip"
],
"default": "Skip"
}

GCP > Monitoring > Notification Channel > ServiceNow > Table > Definition

The policy enables the definition of ServiceNow table properties, including its name and the base table from which it extends, and details the specific columns required for representing GCP > Monitoring > Notification Channel data.

URI
tmod:@turbot/servicenow-gcp-monitoring#/policy/types/notificationChannelServiceNowTableDefinition
Schema
{
"type": "object",
"additionalProperties": false,
"required": [
"table",
"columns"
],
"properties": {
"table": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string"
},
"extendsTable": {
"type": "string",
"pattern": "^([0-9a-z_])+$"
}
}
},
"columns": {
"type": "array",
"description": "An array of columns with their mappings to the CMDB.",
"default": [],
"items": {
"type": "object",
"required": [
"name"
],
"properties": {
"name": {
"type": "string",
"description": "The name of the column in the table.",
"pattern": "^([0-9a-z_])+$"
},
"label": {
"type": "string",
"description": "The label for the column."
},
"type": {
"description": "The data type of the column.",
"type": "string"
},
"size": {
"type": "integer",
"description": "The length for data type."
}
}
}
}
},
"default": {
"table": {
"name": "guardrails_gcp_monitoring_notificationchannel",
"label": "GCP > Monitoring > Notification Channel",
"extendsTable": "cmdb_ci"
},
"columns": [
{
"name": "creation_record",
"label": "Creation Record",
"type": "string",
"size": 1000
},
{
"name": "description",
"label": "Description"
},
{
"name": "display_name",
"label": "Display Name"
},
{
"name": "enabled",
"label": "Enabled",
"type": "boolean"
},
{
"name": "labels",
"label": "Labels",
"type": "string",
"size": 1000
},
{
"name": "mutation_records",
"label": "Mutation Records",
"type": "string",
"size": 1000
},
{
"name": "notification_channel_name",
"label": "Name"
},
{
"name": "project",
"label": "Project"
},
{
"name": "self_link",
"label": "Self Link"
},
{
"name": "tags",
"label": "Tags",
"type": "string",
"size": 1000
},
{
"name": "type",
"label": "Type"
},
{
"name": "user_labels",
"label": "User Labels",
"type": "string",
"size": 1000
},
{
"name": "verification_status",
"label": "Verification Status"
}
]
}
}