Skip to content

Conversation

@stefans-elastic
Copy link
Contributor

@stefans-elastic stefans-elastic commented Oct 20, 2025

Proposed commit message

Checklist

  • I have reviewed tips for building integrations and this pull request is aligned with them.
  • I have verified that all data streams collect metrics or logs.
  • I have added an entry to my package's changelog.yml file.
  • I have verified that Kibana version constraints are current according to guidelines.
  • I have verified that any added dashboard complies with Kibana's Dashboard good practices

Author's Checklist

  • [ ]

How to test this PR locally

Related issues

Screenshots

@stefans-elastic stefans-elastic changed the title add json processor to responseBody and requestBody [azure][activitylogs] add json processor to responseBody and requestBody Oct 20, 2025
@stefans-elastic stefans-elastic added enhancement New feature or request Integration:azure Azure Logs Team:Obs-InfraObs Observability Infrastructure Monitoring team [elastic/obs-infraobs-integrations] labels Oct 20, 2025
@elastic-vault-github-plugin-prod
Copy link

elastic-vault-github-plugin-prod bot commented Oct 20, 2025

🚀 Benchmarks report

To see the full report comment with /test benchmark fullreport

@stefans-elastic stefans-elastic marked this pull request as ready for review October 22, 2025 13:04
@stefans-elastic stefans-elastic requested review from a team as code owners October 22, 2025 13:04
@andrewkroh andrewkroh added the Team:Security-Service Integrations Security Service Integrations team [elastic/security-service-integrations] label Oct 22, 2025
@elasticmachine
Copy link

Pinging @elastic/security-service-integrations (Team:Security-Service Integrations)

"event_category": "ResourceHealth",
"operation_name": "Microsoft.Resourcehealth/healthevent/Updated/action",
"properties": {
"eventProperties": {

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Shouldn't it be snake case as well? Otherwise, LGTM

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

now the case of the fields isn't altered at all.

Copy link
Contributor

@lucian-ioan lucian-ioan left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

Copy link
Contributor

@chemamartinez chemamartinez left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just code owner approval as SSI owns application_gateway data stream.

@muthu-mps
Copy link
Contributor

@stefans-elastic - Lets keep the requestBody and responseBody field names in the same format and not necessary to convert it to snake case as renaming would lead to breaking change.

@stefans-elastic
Copy link
Contributor Author

@stefans-elastic - Lets keep the requestBody and responseBody field names in the same format and not necessary to convert it to snake case as renaming would lead to breaking change.

@muthu-mps to clarify: requestBody and responseBody field names remain the same, right? and how about the nested fields? For example should it be:
option 1

"requestBody": {
      "test_data": {
          "my_test": 123
      }
  },
  "responseBody": {
      "sku_test": {
          "my_name": "Standard_LRS"
      }
  }

or
option 2

"requestBody": {
      "testData": {
          "myTest": 123
      }
  },
  "responseBody": {
      "skuTest": {
          "myName": "Standard_LRS"
      }
  }

@muthu-mps
Copy link
Contributor

@stefans-elastic - Lets keep the requestBody and responseBody field names in the same format and not necessary to convert it to snake case as renaming would lead to breaking change.

@muthu-mps to clarify: requestBody and responseBody field names remain the same, right? and how about the nested fields? For example should it be: option 1

"requestBody": {
      "test_data": {
          "my_test": 123
      }
  },
  "responseBody": {
      "sku_test": {
          "my_name": "Standard_LRS"
      }
  }

or option 2

"requestBody": {
      "testData": {
          "myTest": 123
      }
  },
  "responseBody": {
      "skuTest": {
          "myName": "Standard_LRS"
      }
  }

Same can be applied to nested fields as well. Converting the nested fields without converting base field would lead to naming inconsistency.

@stefans-elastic
Copy link
Contributor Author

@muthu-mps the change has been implemented.

}
},
"responseBody": {
"skuTest": {
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we replace with actual field name? The values can have sample data but the field names should reflect the actual name. Same applies to requestBody.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

found example of requestBody and responseBody and updated the test data

@elasticmachine
Copy link

💚 Build Succeeded

History

Copy link
Contributor

@tommyers-elastic tommyers-elastic left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@stefans-elastic stefans-elastic merged commit 0652bdb into elastic:main Nov 5, 2025
7 checks passed
@elastic-vault-github-plugin-prod

Package azure - 1.29.0 containing this change is available at https://epr.elastic.co/package/azure/1.29.0/

@leandrojmp
Copy link
Contributor

Hello, just saw this update in the integration available and was checking the PR.

What is being changed here? the field azure.activitylogs.properties is mapped as flattened, so this is just parsing the json on the nested responseBody and requestBody but does not change any of the mappings, right?

@efd6
Copy link
Contributor

efd6 commented Nov 13, 2025

tehbooom pushed a commit to tehbooom/integrations that referenced this pull request Nov 19, 2025
…ody (elastic#15690)

* add json processor to responseBody and requestBody

* extra test case

* update manifest and changelog

* fix field name in processor

* cover requestBody in tests

* update expected results

* Update packages/azure/data_stream/activitylogs/elasticsearch/ingest_pipeline/default.yml

Co-authored-by: Lucian Ioan <[email protected]>

* Update packages/azure/data_stream/activitylogs/elasticsearch/ingest_pipeline/default.yml

Co-authored-by: Lucian Ioan <[email protected]>

* Update packages/azure/data_stream/activitylogs/elasticsearch/ingest_pipeline/default.yml

Co-authored-by: Lucian Ioan <[email protected]>

* address PR comments

* update test data with real field names

---------

Co-authored-by: Lucian Ioan <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

enhancement New feature or request Integration:azure Azure Logs Team:Obs-InfraObs Observability Infrastructure Monitoring team [elastic/obs-infraobs-integrations] Team:Security-Service Integrations Security Service Integrations team [elastic/security-service-integrations]

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Azure] Escaped JSON in azure.activitylogs.properties

10 participants