Collect reCAPTCHA Enterprise logs
This document describes how you can collect reCAPTCHA Enterprise logs by enabling Google Cloud telemetry ingestion to Google Security Operations and how log fields of reCAPTCHA Enterprise logs map to Google Security Operations Unified Data Model (UDM) fields.
For more information, see Data ingestion to Google Security Operations overview .
A typical deployment consists of reCAPTCHA Enterprise logs that are enabled for ingestion to Google Security Operations. Each customer deployment might differ and might be more complex.
Consider a deployment that contains the following components:
-  Google Cloud: The Google Cloud services and products from which you collect logs. 
-  reCAPTCHA Enterprise logs: The reCAPTCHA Enterprise logs that are enabled for ingestion to Google Security Operations. 
-  Google Security Operations: Google Security Operations retains and analyzes the logs from reCAPTCHA Enterprise. 
You need to use an ingestion label to identify the parser which normalizes raw log data to structured UDM format. This document applies to the parser with the GCP_RECAPTCHA_ENTERPRISE 
ingestion label.
Before you begin
-  Ensure that all systems in the deployment architecture are configured in the UTC time zone. 
-  Ensure that you have enabled platform logging for reCAPTCHA Enterprise specifically for the following: - Assessment logs
- Annotation logs
 
Configure Google Cloud for ingestion
To ingest reCAPTCHA Enterprise logs to Google Security Operations, follow the steps on the Ingest Google Cloud data to Google Security Operations page.
If you encounter issues when you ingest reCAPTCHA Enterprise logs, contact Google Security Operations support .
Field mapping reference
Field mapping reference: reCAPTCHA Enterprise - Assessment
The following table lists the log fields of the Assessment 
log type and their corresponding UDM fields.
metadata.product_name 
metadata.product_name 
UDM field is set to reCAPTCHA 
.metadata.vendor_name 
metadata.vendor_name 
UDM field is set to Google Cloud Platform 
.metadata.event_type 
metadata.event_type 
UDM field is set to USER_UNCATEGORIZED 
.jsonPayload.@type 
metadata.product_event_type 
jsonPayload.name 
security_result.detection_fields[json_payload_name] 
insertId 
metadata.product_log_id 
timestamp 
metadata.event_timestamp 
logName 
metadata.url_back_to_product 
https://console.cloud.google.com/logs?%{logName} 
field is mapped to the metadata.url_back_to_product 
UDM field.receiveTimestamp 
metadata.collected_timestamp 
resource.labels.key_id 
target.resource.product_object_id 
resource.type 
target.resource.resource_subtype 
resource.labels.location 
target.location.name 
resource.labels.resource_container 
target.resource.attribute.labels[resource_labels_resource_container] 
labels.backend_language 
target.resource.attribute.labels[labels_backend_language] 
labels.demo_key 
target.resource.attribute.labels[labels_demo_key] 
jsonPayload.event.userAgent 
network.http.user_agent 
jsonPayload.event.userIpAddress 
principal.ip 
principal.resource.resource_type 
jsonPayload.event.token 
log field value is not 
empty, then principal.resource.resource_type 
UDM field is set to CREDENTIAL 
.jsonPayload.event.token 
principal.resource.product_object_id 
jsonPayload.event.siteKey 
security_result.detection_fields[event_site_key] 
jsonPayload.event.hashedAccountId 
principal.user.attribute.labels[event_hashed_account_id] 
jsonPayload.event.expectedAction 
principal.user.attribute.labels[event_expected_action] 
jsonPayload.tokenProperties.action 
principal.resource.attribute.labels[token_properties_action] 
jsonPayload.tokenProperties.createTime 
principal.resource.attribute.creation_time 
jsonPayload.tokenProperties.hostname 
target.hostname 
jsonPayload.tokenProperties.invalidReason 
principal.resource.attribute.labels[token_properties_invalid_reason] 
jsonPayload.tokenProperties.valid 
principal.resource.attribute.labels[token_properties_valid] 
jsonPayload.tokenProperties.androidPackageName 
principal.resource.attribute.labels[token_properties_android_package_name] 
jsonPayload.tokenProperties.iosBundleId 
principal.resource.attribute.labels[token_properties_ios_bundle_id] 
security_result.verdict_info.verdict_type 
jsonPayload.riskAnalysis.reasons 
log field value is not 
empty, then the security_result.verdict_info.verdict_type 
UDM field is set to PROVIDER_ML_VERDICT 
.jsonPayload.riskAnalysis.reasons 
security_result.verdict_info.category_details 
index 
value is equal to 0 
, then the jsonPayload.riskAnalysis.reasons 
log field is mapped to the security_result.verdict_info.category_details 
UDM field.Else, the
jsonPayload.riskAnalysis.reasons 
log field is mapped to the security_result.detection_fields.risk_analysis_reasons 
UDM field.jsonPayload.riskAnalysis.reasons 
security_result.detection_fields[risk_analysis_reasons] 
index 
value is equal to 0 
, then the jsonPayload.riskAnalysis.reasons 
log field is mapped to the security_result.verdict_info.category_details 
UDM field.Else, the
jsonPayload.riskAnalysis.reasons 
log field is mapped to the security_result.detection_fields.risk_analysis_reasons 
UDM field.jsonPayload.riskAnalysis.score 
security_result.risk_score 
jsonPayload.riskAnalysis.extendedVerdictReasons 
security_result.detection_fields[risk_analysis_extended_verdict_reasons] 
jsonPayload.event.express 
additional.fields[event_express] 
jsonPayload.event.requestedUri 
target.url 
jsonPayload.event.wafTokenAssessment 
security_result.detection_fields[event_waf_token_assessment] 
jsonPayload.event.ja3 
network.tls.client.ja3 
jsonPayload.event.headers 
additional.fields[event_headers_%{index}] 
jsonPayload.event.headers 
log field is mapped to the additional.fields[event_headers_%{index}] 
UDM field.jsonPayload.event.firewallPolicyEvaluation 
additional.fields[event_firewall_policy_evaluation] 
jsonPayload.event.userInfo.createAccountTime 
principal.user.attribute.creation_time 
jsonPayload.event.userInfo.accountId 
principal.user.userid 
jsonPayload.event.userInfo.accountId 
log field value is not 
empty, then the jsonPayload.event.userInfo.accountId 
log field is mapped to the principal.user.userid 
UDM field.Else, the
jsonPayload.event.transactionData.user.accountId 
log field is mapped to the principal.user.userid 
UDM field.jsonPayload.event.userInfo.userIds.email 
principal.user.email_addresses 
jsonPayload.event.userInfo.userIds.phoneNumber 
principal.user.phone_numbers 
jsonPayload.event.userInfo.userIds.username 
principal.user.user_display_name 
index 
value is equal to 0 
, then the jsonPayload.event.userInfo.userIds.username 
log field is mapped to the principal.user.user_display_name 
UDM field.Else, the
jsonPayload.event.userInfo.userIds.username 
log field is mapped to the principal.user.attribute.labels.event_user_info_user_ids_username 
UDM field.jsonPayload.event.userInfo.userIds.username 
principal.user.attribute.labels[event_user_info_user_ids_username] 
index 
value is equal to 0 
, then the jsonPayload.event.userInfo.userIds.username 
log field is mapped to the principal.user.user_display_name 
UDM field.Else, the
jsonPayload.event.userInfo.userIds.username 
log field is mapped to the principal.user.attribute.labels.event_user_info_user_ids_username 
UDM field.jsonPayload.event.transactionData.transactionId 
security_result.detection_fields[event_transaction_data_transaction_id] 
jsonPayload.event.transactionData.paymentMethod 
security_result.detection_fields[event_transaction_data_payment_method] 
jsonPayload.event.transactionData.cardBin 
security_result.detection_fields[event_transaction_data_card_bin] 
jsonPayload.event.transactionData.cardLastFour 
security_result.detection_fields[event_transaction_data_card_last_four] 
jsonPayload.event.transactionData.currencyCode 
security_result.detection_fields[event_transaction_data_currency_code] 
jsonPayload.event.transactionData.value 
security_result.detection_fields[event_transaction_data_value] 
jsonPayload.event.transactionData.shippingValue 
security_result.detection_fields[event_transaction_data_shipping_value] 
jsonPayload.event.transactionData.shippingAddress.recipient 
principal.user.attribute.labels[event_transaction_data_shipping_address_recipient] 
jsonPayload.event.transactionData.shippingAddress.address 
principal.user.personal_address.name 
index 
value is equal to 0 
, then the jsonPayload.event.transactionData.shippingAddress.address 
log field is mapped to the principal.user.personal_address.name 
UDM field.Else, the
jsonPayload.event.transactionData.shippingAddress.address 
log field is mapped to the principal.user.attribute.labels.event_transaction_data_shipping_address_address 
UDM field.jsonPayload.event.transactionData.shippingAddress.address 
principal.user.attribute.labels[event_transaction_data_shipping_address_address] 
index 
value is equal to 0 
, then the jsonPayload.event.transactionData.shippingAddress.address 
log field is mapped to the principal.user.personal_address.name 
UDM field.Else, the
jsonPayload.event.transactionData.shippingAddress.address 
log field is mapped to the principal.user.attribute.labels.event_transaction_data_shipping_address_address 
UDM field.jsonPayload.event.transactionData.shippingAddress.locality 
principal.user.personal_address.city 
jsonPayload.event.transactionData.shippingAddress.administrativeArea 
principal.user.personal_address.state 
jsonPayload.event.transactionData.shippingAddress.regionCode 
principal.user.personal_address.country_or_region 
jsonPayload.event.transactionData.shippingAddress.postalCode 
principal.user.attribute.labels[event_transaction_data_shipping_address_postal_code] 
jsonPayload.event.transactionData.billingAddress.recipient 
about.user.attribute.labels[event_transaction_data_billing_address_recipient] 
jsonPayload.event.transactionData.billingAddress.address 
about.user.personal_address.name 
index 
value is equal to 0 
, then the jsonPayload.event.transactionData.billingAddress.address 
log field is mapped to the about.user.personal_address.name 
UDM field.Else, the
jsonPayload.event.transactionData.billingAddress.address 
log field is mapped to the about.user.attribute.labels.event_transaction_data_billing_address_address 
UDM field.jsonPayload.event.transactionData.billingAddress.address 
about.user.attribute.labels[event_transaction_data_billing_address_address] 
index 
value is equal to 0 
, then the jsonPayload.event.transactionData.billingAddress.address 
log field is mapped to the about.user.personal_address.name 
UDM field.Else, the
jsonPayload.event.transactionData.billingAddress.address 
log field is mapped to the about.user.attribute.labels.event_transaction_data_billing_address_address 
UDM field.jsonPayload.event.transactionData.billingAddress.locality 
about.user.personal_address.city 
jsonPayload.event.transactionData.billingAddress.administrativeArea 
about.user.personal_address.state 
jsonPayload.event.transactionData.billingAddress.regionCode 
about.user.personal_address.country_or_region 
jsonPayload.event.transactionData.billingAddress.postalCode 
about.user.attribute.labels[event_transaction_data_billing_address_postal_code] 
jsonPayload.event.transactionData.user.accountId 
principal.user.userid 
jsonPayload.event.userInfo.accountId 
log field value is not 
empty, then the jsonPayload.event.userInfo.accountId 
log field is mapped to the principal.user.userid 
UDM field.Else, the
jsonPayload.event.transactionData.user.accountId 
log field is mapped to the principal.user.userid 
UDM field.jsonPayload.event.transactionData.user.creationMs 
principal.user.attribute.creation_time 
jsonPayload.event.transactionData.user.email 
principal.user.email_addresses 
jsonPayload.event.transactionData.user.emailVerified 
principal.user.attribute.labels[event_transaction_data_user_email_verified] 
jsonPayload.event.transactionData.user.phoneNumber 
principal.user.phone_numbers 
jsonPayload.event.transactionData.user.phoneVerified 
principal.user.attribute.labels[event_transaction_data_user_phone_verified] 
jsonPayload.event.transactionData.merchants.accountId 
about.user.userid 
jsonPayload.event.transactionData.merchants.creationMs 
about.user.attribute.creation_time 
jsonPayload.event.transactionData.merchants.email 
about.user.email_addresses 
jsonPayload.event.transactionData.merchants.emailVerified 
about.user.attribute.labels[event_transaction_data_merchants_email_verified] 
jsonPayload.event.transactionData.merchants.phoneNumber 
about.user.phone_numbers 
jsonPayload.event.transactionData.merchants.phoneVerified 
about.user.attribute.labels[event_transaction_data_merchants_phone_verified] 
jsonPayload.event.transactionData.gatewayInfo.name 
security_result.detection_fields[event_transaction_data_gateway_info_name] 
jsonPayload.event.transactionData.gatewayInfo.gatewayResponseCode 
security_result.detection_fields[event_transaction_data_gateway_info_gateway_response_code] 
jsonPayload.event.transactionData.gatewayInfo.avsResponseCode 
security_result.detection_fields[event_transaction_data_gateway_info_avs_response_code] 
jsonPayload.event.transactionData.gatewayInfo.cvvResponseCode 
security_result.detection_fields[event_transaction_data_gateway_info_cvv_response_code] 
jsonPayload.event.transactionData.items.name 
security_result.detection_fields[event_transaction_data_items_name] 
jsonPayload.event.transactionData.items.value 
security_result.detection_fields[event_transaction_data_items_value] 
jsonPayload.event.transactionData.items.quantity 
security_result.detection_fields[event_transaction_data_items_quantity] 
jsonPayload.event.transactionData.items.merchantAccountId 
security_result.detection_fields[event_transaction_data_items_merchant_account_id] 
jsonPayload.accountVerification.endpoints.requestToken 
principal.user.attribute.labels[account_verification_endpoint_request_token] 
jsonPayload.accountVerification.endpoints.lastVerificationTime 
principal.user.attribute.labels[account_verification_endpoint_last_verification_time] 
jsonPayload.accountVerification.endpoints.emailAddress 
principal.user.email_addresses 
jsonPayload.accountVerification.endpoints.phoneNumber 
principal.user.phone_numbers 
jsonPayload.accountVerification.languageCode 
additional.fields[account_verification_language_code] 
security_result.action 
jsonPayload.accountVerification.latestVerificationResult 
log field value is equal to SUCCESS_USER_VERIFIED 
, then the security_result.action 
UDM field is set to CHALLENGE 
.Else, if the
jsonPayload.accountVerification.latestVerificationResult 
log field value is equal to ERROR_USER_NOT_VERIFIED 
, then the security_result.action 
UDM field is set to FAIL 
.Else, if the
jsonPayload.accountVerification.latestVerificationResult 
log field value is equal to ERROR_RECIPIENT_NOT_ALLOWED 
, then the security_result.action 
UDM field is set to BLOCK 
.Else, if the
jsonPayload.accountVerification.latestVerificationResult 
log field value is equal to ERROR_VERDICT_MISMATCH 
, then the security_result.action 
UDM field is set to ALLOW_WITH_MODIFICATION 
.Else, the
security_result.action 
UDM field is set to UNKNOWN_ACTION 
.jsonPayload.accountVerification.latestVerificationResult 
security_result.action_details 
jsonPayload.accountDefenderAssessment.labels 
security_result.detection_fields[account_defender_assessment_labels] 
jsonPayload.privatePasswordLeakVerification.lookupHashPrefix 
principal.user.attribute.labels[private_password_leak_verification_lookup_hash_prefix] 
jsonPayload.privatePasswordLeakVerification.encryptedUserCredentialsHash 
principal.user.attribute.labels[private_password_leak_verification_encrypted_user_credentials_hash] 
jsonPayload.privatePasswordLeakVerification.encryptedLeakMatchPrefixes 
principal.user.attribute.labels[private_password_leak_verification_encrypted_leak_match_prefixes] 
jsonPayload.privatePasswordLeakVerification.reencryptedUserCredentialsHash 
principal.user.attribute.labels[private_password_leak_verification_reencrypted_user_credentials_hash] 
network.http.response_code 
jsonPayload.firewallPolicyAssessment.error.code 
log field value is equal to 0 
, then the network.http.response_code 
UDM field is set to 200 
.Else, if the
jsonPayload.firewallPolicyAssessment.error.code 
log field value contains one of the following values, then the network.http.response_code 
UDM field is set to 400 
. -  9
-  11
-  3
jsonPayload.firewallPolicyAssessment.error.code 
log field value is equal to 16 
, then the network.http.response_code 
UDM field is set to 401 
.Else, if the
jsonPayload.firewallPolicyAssessment.error.code 
log field value is equal to 7 
, then the network.http.response_code 
UDM field is set to 403 
.Else, if the
jsonPayload.firewallPolicyAssessment.error.code 
log field value is equal to 5 
, then the network.http.response_code 
UDM field is set to 404 
.Else, if the
jsonPayload.firewallPolicyAssessment.error.code 
log field value contains one of the following values, then the network.http.response_code 
UDM field is set to 409 
. -  10
-  6
jsonPayload.firewallPolicyAssessment.error.code 
log field value is equal to 8 
, then the network.http.response_code 
UDM field is set to 429 
.Else, if the
jsonPayload.firewallPolicyAssessment.error.code 
log field value is equal to 1 
, then the network.http.response_code 
UDM field is set to 499 
.Else, if the
jsonPayload.firewallPolicyAssessment.error.code 
log field value contains one of the following values, then the network.http.response_code 
UDM field is set to 500 
. -  13
-  15
-  2
jsonPayload.firewallPolicyAssessment.error.code 
log field value is equal to 12 
, then the network.http.response_code 
UDM field is set to 501 
.Else, if the
jsonPayload.firewallPolicyAssessment.error.code 
log field value is equal to 14 
, then the network.http.response_code 
UDM field is set to 503 
.Else the
jsonPayload.firewallPolicyAssessment.error.code 
log field value is equal to 4 
, then the network.http.response_code 
UDM field is set to 504 
.jsonPayload.firewallPolicyAssessment.error.message 
security_result.detection_fields[firewall_policy_assessment_error_message] 
jsonPayload.firewallPolicyAssessment.error.details 
security_result.detection_fields[firewall_policy_assessment_error_details] 
jsonPayload.fraudPreventionAssessment.transactionRisk 
security_result.detection_fields[fraud_prevention_assessment_transaction_risk] 
jsonPayload.fraudPreventionAssessment.stolenInstrumentVerdict.risk 
security_result.detection_fields[fraud_prevention_assessment_stolen_instrument_verdict_risk] 
jsonPayload.fraudPreventionAssessment.cardTestingVerdict.risk 
security_result.detection_fields[fraud_prevention_assessment_card_testing_erdict_risk] 
jsonPayload.fraudPreventionAssessment.behavioralTrustVerdict.trust 
security_result.detection_fields[fraud_prevention_assessment_behavioral_trust_verdict_trust] 
jsonPayload.fraudSignals.userSignals.activeDaysLowerBound 
security_result.detection_fields[fraud_signals_user_signals_active_days_lower_bound] 
jsonPayload.fraudSignals.userSignals.syntheticRisk 
security_result.detection_fields[fraud_signals_user_signals_synthetic_risk] 
jsonPayload.fraudSignals.cardSignals.cardLabels 
security_result.detection_fields[fraud_signals_card_signals_card_labels] 
jsonPayload.firewallPolicyAssessment.firewallPolicy.name 
intermediary.resource.name 
intermediary.resource.resource_type 
jsonPayload.firewallPolicyAssessment.firewallPolicy.name 
log field value is not 
empty, then the intermediary.resource.resource_type 
UDM field is set to FIREWALL_RULE 
.jsonPayload.firewallPolicyAssessment.firewallPolicy.description 
intermediary.resource.attribute.labels[firewall_policy_assessment_description] 
jsonPayload.firewallPolicyAssessment.firewallPolicy.path 
intermediary.resource.attribute.labels[firewall_policy_assessment_path] 
jsonPayload.firewallPolicyAssessment.firewallPolicy.conditions 
intermediary.resource.attribute.labels[firewall_policy_assessment_conditions] 
security_result.action 
jsonPayload.firewallPolicyAssessment.firewallPolicy.actions.allow 
log field value is not 
empty, then the security_result.action 
UDM field is set to ALLOW 
.security_result.action 
jsonPayload.firewallPolicyAssessment.firewallPolicy.actions.block 
log field value is not 
empty, then the security_result.action 
UDM field is set to BLOCK 
.security_result.action 
jsonPayload.firewallPolicyAssessment.firewallPolicy.actions.redirect 
log field value is not 
empty, then the security_result.action 
UDM field is set to CHALLENGE 
.jsonPayload.firewallPolicyAssessment.firewallPolicy.actions.substitute.path 
target.url_metadata.last_final_url 
index 
value is equal to 0 
, then the jsonPayload.firewallPolicyAssessment.firewallPolicy.actions.substitute.path 
log field is mapped to the target.url_metadata.last_final_url 
UDM field.Else, the
jsonPayload.firewallPolicyAssessment.firewallPolicy.actions.substitute.path 
log field is mapped to the intermediary.resource.attribute.labels.firewall_policy_assessment_firewall_policy_actions_substitute_path 
UDM field.jsonPayload.firewallPolicyAssessment.firewallPolicy.actions.substitute.path 
intermediary.resource.attribute.labels[firewall_policy_assessment_firewall_policy_actions_substitute_path] 
index 
value is equal to 0 
, then the jsonPayload.firewallPolicyAssessment.firewallPolicy.actions.substitute.path 
log field is mapped to the target.url_metadata.last_final_url 
UDM field.Else, the
jsonPayload.firewallPolicyAssessment.firewallPolicy.actions.substitute.path 
log field is mapped to the intermediary.resource.attribute.labels.firewall_policy_assessment_firewall_policy_actions_substitute_path 
UDM field.jsonPayload.firewallPolicyAssessment.firewallPolicy.actions.setHeader.key 
intermediary.resource.attribute.labels[firewall_policy_assessment_firewall_policy_actions_set_header_key] 
jsonPayload.firewallPolicyAssessment.firewallPolicy.actions.setHeader.value 
intermediary.resource.attribute.labels[firewall_policy_assessment_firewall_policy_actions_set_header_value] 
Field mapping reference: reCAPTCHA Enterprise - Annotation
The following table lists the log fields of the Annotation 
log type and their corresponding UDM fields.
| Log field | UDM mapping | Logic | 
|---|---|---|
|  | metadata.product_name | The metadata.product_nameUDM field is set toreCAPTCHA. | 
|  | metadata.vendor_name | The metadata.vendor_nameUDM field is set toGoogle Cloud Platform. | 
|  | metadata.event_type | The metadata.event_typeUDM field is set toGENERIC_EVENT. | 
| jsonPayload.@type | metadata.product_event_type | |
| insertId | metadata.product_log_id | |
| timestamp | metadata.event_timestamp | |
| logName | metadata.url_back_to_product | The https://console.cloud.google.com/logs?%{logName}field is mapped to themetadata.url_back_to_productUDM field. | 
| receiveTimestamp | metadata.collected_timestamp | |
| jsonPayload.name | security_result.detection_fields[json_payload_name] | |
| resource.labels.key_id | target.resource.product_object_id | |
| resource.type | target.resource.resource_subtype | |
| resource.labels.location | target.location.name | |
| resource.labels.resource_container | target.resource.attribute.labels[resource_labels_resource_container] | |
| labels.backend_language | target.resource.attribute.labels[labels_backend_language] | |
| labels.demo_key | target.resource.attribute.labels[labels_demo_key] | |
|  | security_result.verdict_info.verdict_response | If the jsonPayload.annotationlog field value is equal toLEGITIMATE, then thesecurity_result.verdict_info.verdict_responseUDM field is set toBENIGN.Else, if the jsonPayload.annotationlog field value is equal toFRAUDULENT, then thesecurity_result.verdict_info.verdict_responseUDM field is set toMALICIOUS.Else, the jsonPayload.annotationlog field value is equal toANNOTATION_UNSPECIFIED, then thesecurity_result.verdict_info.verdict_responseUDM field is set toVERDICT_RESPONSE_UNSPECIFIED. | 
| jsonPayload.reasons | security_result.verdict_info.category_details | If the indexvalue is equal to0, then thejsonPayload.reasonslog field is mapped to thesecurity_result.verdict_info.category_detailsUDM field.Else, the jsonPayload.reasonslog field is mapped to thesecurity_result.detection_fields.reasonsUDM field. | 
| jsonPayload.reasons | security_result.detection_fields[reasons] | If the indexvalue is equal to0, then thejsonPayload.reasonslog field is mapped to thesecurity_result.verdict_info.category_detailsUDM field.Else, the jsonPayload.reasonslog field is mapped to thesecurity_result.detection_fields.reasonsUDM field. | 
| jsonPayload.accountId | target.user.userid | |
| jsonPayload.hashedAccountId | target.user.attribute.labels[hashed_account_id] | |
| jsonPayload.transactionEvent.eventType | security_result.detection_fields[transaction_event_event_type] | |
| jsonPayload.transactionEvent.reason | security_result.detection_fields[transaction_event_reason] | |
| jsonPayload.transactionEvent.value | security_result.detection_fields[transaction_event_value] | |
| jsonPayload.transactionEvent.eventTime | security_result.detection_fields[transaction_event_event_time] | 
What's next
Need more help? Get answers from Community members and Google SecOps professionals.

