Releases: opensnowcat/opensnowcat-enrich
1.2.2
What's Changed
- Geo enrichment S3 region detection fix by @oermolaev in #291
- Bump the protobuf-java to the latest available 4.29 version by @oermolaev in #298
- Setup explicit setup-sbt step. Update checkout and java setup step ve… by @oermolaev in #293
- Update commons-io to 2.18 by @oermolaev in #294
- Update protobuf-java to fix CVE-2024-7254 by @oermolaev in #292
- Update SBT-dependent actions pipelines with explicit sbt binaries setup step by @oermolaev in #295
- Bump scalacenter/sbt-dependency-submission action to v3 by @oermolaev in #296
- Configure explicit JDK/SBT setup in Dependency Graph pipeline by @oermolaev in #297
Full Changelog: 1.2.1...1.2.2
1.2.1
What's Changed
- Add SkinnyJson format by @AlexITC in #285
- Enable docker releases. Update release pipeline by @oermolaev in #287
- Fix generation of docker image tags for a release version by @oermolaev in #288
New Contributors
- @oermolaev made their first contribution in #287
Full Changelog: 1.2.0...1.2.1
1.2.0
What's New
- A hotfix for the Eventbridge module, we were sending large payloads that were rejected by Eventbridge (more than 256kb), it makes no sense to send these nor retry because AWS rejects the requests (see https://docs.aws.amazon.com/eventbridge/latest/APIReference/API_PutEvents.html).
- A new JSON format (
BigQueryJson
) to support BigQuery (by @Fattouh92). - Many dependency updates.
What's Changed
- Update cloudwatch, dynamodb, eventbridge, ... to 2.24.13 by @wiringbits-bot in #155
- Update aws-java-sdk-dynamodb, ... to 1.12.671 by @wiringbits-bot in #151
- Update cloudwatch, dynamodb, eventbridge, ... to 2.25.6 by @wiringbits-bot in #161
- Update aws-java-sdk-dynamodb, ... to 1.12.676 by @wiringbits-bot in #156
- Update cloudwatch, dynamodb, eventbridge, ... to 2.25.11 by @wiringbits-bot in #171
- Update postgresql to 42.7.3 by @wiringbits-bot in #170
- Update log4j-core, log4j-to-slf4j to 2.23.1 by @wiringbits-bot in #169
- Update sbt-assembly to 2.2.0 by @wiringbits-bot in #163
- Update aws-java-sdk-dynamodb, ... to 1.12.681 by @wiringbits-bot in #162
- Update yauaa to 7.24.0 by @wiringbits-bot in #168
- Update cloudwatch, dynamodb, eventbridge, ... to 2.25.16 by @wiringbits-bot in #179
- Update libthrift to 0.20.0 by @wiringbits-bot in #178
- Update json-smart to 2.5.1 by @wiringbits-bot in #177
- Update netty-all, netty-codec to 4.1.108.Final by @wiringbits-bot in #176
- Update sbt-buildinfo to 0.12.0 by @wiringbits-bot in #174
- Update aws-java-sdk-dynamodb, ... to 1.12.686 by @wiringbits-bot in #173
- Update guava to 33.1.0-jre by @wiringbits-bot in #166
- Update cloudwatch, dynamodb, eventbridge, ... to 2.25.21 by @wiringbits-bot in #184
- Update aws-java-sdk-dynamodb, ... to 1.12.691 by @wiringbits-bot in #181
- Update aws-msk-iam-auth to 2.1.0 by @wiringbits-bot in #188
- Update cloudwatch, dynamodb, eventbridge, ... to 2.25.26 by @wiringbits-bot in #187
- Update sbt-tpolecat to 0.5.1 by @wiringbits-bot in #186
- Update aws-java-sdk-dynamodb, ... to 1.12.696 by @wiringbits-bot in #185
- Update cloudwatch, dynamodb, eventbridge, ... to 2.25.31 by @wiringbits-bot in #193
- Update slf4j-simple to 2.0.13 by @wiringbits-bot in #192
- Update kafka-clients to 7.6.1-ce by @wiringbits-bot in #191
- Update aws-java-sdk-dynamodb, ... to 1.12.701 by @wiringbits-bot in #189
- Update cloudwatch, dynamodb, eventbridge, ... to 2.25.35 by @wiringbits-bot in #203
- Update commons-text to 1.12.0 by @wiringbits-bot in #200
- Update scala-parser-combinators to 2.4.0 by @wiringbits-bot in #201
- Update scalacheck to 1.17.1 by @wiringbits-bot in #202
- Update netty-all, netty-codec to 4.1.109.Final by @wiringbits-bot in #198
- Update sbt-snowplow-release to 0.3.2 by @wiringbits-bot in #205
- Update aws-java-sdk-dynamodb, ... to 1.12.705 by @wiringbits-bot in #194
- Update cloudwatch, dynamodb, eventbridge, ... to 2.25.60 by @wiringbits-bot in #234
- Update scalacheck to 1.18.0 by @wiringbits-bot in #233
- Update netty-all, netty-codec to 4.1.110.Final by @wiringbits-bot in #232
- Update aws-java-sdk-dynamodb, ... to 1.12.730 by @wiringbits-bot in #228
- Update aws-java-sdk-dynamodb, ... to 1.12.734 by @wiringbits-bot in #235
- Update guava to 33.2.1-jre by @wiringbits-bot in #236
- Update cloudwatch, dynamodb, eventbridge, ... to 2.25.64 by @wiringbits-bot in #237
- Update cloudwatch, dynamodb, eventbridge, ... to 2.25.69 by @wiringbits-bot in #242
- Update sbt-coveralls to 1.3.12 by @wiringbits-bot in #264
- Update aws-java-sdk-dynamodb, ... to 1.12.761 by @wiringbits-bot in #261
- Update aws-java-sdk-dynamodb, ... to 1.12.757 by @wiringbits-bot in #255
- Update specs2-core, specs2-mock, ... to 4.20.8 by @wiringbits-bot in #260
- Update protobuf-java to 4.27.2 by @wiringbits-bot in #254
- Update aws-msk-iam-auth to 2.1.1 by @wiringbits-bot in #249
- Update aws-msk-iam-auth to 2.2.0 by @wiringbits-bot in #269
- Update netty-all, netty-codec to 4.1.112.Final by @wiringbits-bot in #266
- Update aws-java-sdk-dynamodb, ... to 1.12.762 by @wiringbits-bot in #265
- Update kafka-clients to 7.6.2-ce by @wiringbits-bot in #268
- Update kafka-clients to 7.7.0-ce by @wiringbits-bot in #273
- Update aws-java-sdk-dynamodb, ... to 1.12.765 by @wiringbits-bot in #270
- Update sbt-coveralls to 1.3.13 by @wiringbits-bot in #275
- CI: Fix build by @AlexITC in #283
- hotfix: Eventbridge byte limit by @AlexITC in #282
- Add BigQueryJson format by @AlexITC in #284
Full Changelog: 1.1.0...1.2.0
1.1.0
What's New
JSON Output for all modules
In this version, we expanded support for flattened JSON output to all modules.
JSON enables easier integration with data infrastructure without creating dependencies on vendor-specific loaders.
JSON format improvements
A new entry is available in the experimental settings which allows defining the output format:
"experimental": {
# Whether to use an alternative output format (either "FlattenedJson" or "EventbridgeJson")
# - FlattenedJson: encodes the output as JSON, where unstruct_event, contexts and derived_contexts are flattened
# - EventbridgeJson: encodes the output as JSON with extra details, intended exclusively to use with eventbridge module.
"customOutputFormat": {
"type": "FlattenedJson"
}
}
This is an example produced when enabling the FlattenedJson
format (null values omitted for simplicity):
{
"collector_tstamp" : "2011-12-03T10:15:30Z",
"contexts_org_ietf_http_header_1" : [
{
"name" : "Host",
"value" : "test"
}
],
"event_id" : "236392af-ffec-4def-a0de-86929e9615be",
}
Previously, this JSON format was available only for Kinesis but it can now be enabled in all modules.
NOTE: If you use the PII output. the JSON format is discouraged because we have not done enough tests on this.
EventbridgeJson format
This is a superset of the FlattenedJson
format, it has the option to include a few extra fields in the output, it can be turned on with:
"experimental": {
# Whether to use an alternative output format (either "FlattenedJson" or "EventbridgeJson")
# - FlattenedJson: encodes the output as JSON, where unstruct_event, contexts and derived_contexts are flattened
# - EventbridgeJson: encodes the output as JSON with extra details, intended exclusively to use with eventbridge module.
"customOutputFormat": {
"type": "EventbridgeJson"
# Add a "payload" parameter with the original base64 encoded TSV. Defaults to false (Useful for EventbridgeJson only).
"payload": true
# Add a "collector" parameter from contexts_org_ietf_http_header_1 Host Value. Defaults to false (Useful for EventbridgeJson only).
"collector": true
}
}
This is an example produced when enabling the FlattenedJson
format (null values omitted for simplicity):
{
"collector_tstamp" : "2011-12-03T10:15:30Z",
"contexts_org_ietf_http_header_1" : [
{
"name" : "Host",
"value" : "test"
}
],
"event_id" : "236392af-ffec-4def-a0de-86929e9615be",
# produced because "collector" = true
"collector" : "test",
# produced because "payload" = true
"payload" : "<<BASE64ENCODEDTDV>>,
}
NOTE: This format is intended for the eventbridge module only.
Breaking changes
If you are using the JSON output from Kinesis it means that you have these settings:
{
...
output {
good: {
...
jsonOutput = true
}
pii: {
...
jsonOutput = true
}
bad: {
...
jsonOutput = true
}
}
}
These need to be removed, then, set the experimental settings like this:
...
"experimental": {
"customOutputFormat": {
"type": "FlattenedJson"
}
}
If you are use eventbridge, you may have these settings:
{
...
output {
good: {
...
collector = true
payload = true
}
}
}
Which need to be replaced by:
{
...
"experimental": {
"customOutputFormat": {
"type": "EventbridgeJson"
"payload": true
"collector": true
}
}
}
Changelog
- Increased test coverage for JSON output.
- Dependency updates.
- JSON format improvements
- Validate payload size when producing JSON output.
- Errors when producing JSON output are now propagated to the bad output.
- Update cats-retry to 2.1.1 by @wiringbits-bot in #25
- Update commons-codec to 1.16.0 by @wiringbits-bot in #45
- Update HikariCP to 5.1.0 by @wiringbits-bot in #44
- Update fs2-core, fs2-io to 2.5.11 by @wiringbits-bot in #18
- Update snowplow-event-generator-core to 0.2.2 by @wiringbits-bot in #41
- Update aws-java-sdk-dynamodb, ... to 1.12.636 by @wiringbits-bot in #19
- Update cats-effect-testing-specs2 to 0.4.2 by @wiringbits-bot in #20
- Update sbt-assembly to 0.14.10 by @wiringbits-bot in #21
- Update gcs, s3 to 0.8.11 by @wiringbits-bot in #27
- Update guava to 28.2-jre by @wiringbits-bot in #30
- Update jackson-databind to 2.15.3 by @wiringbits-bot in #23
- Update sbt-ci-release to 1.5.12 by @wiringbits-bot in #24
- Update uap-java to 1.6.1 by @wiringbits-bot in #28
- Update scala-maxmind-iplookups to 0.7.2 by @wiringbits-bot in #37
- Update protobuf-java to 3.21.12 by @wiringbits-bot in #31
- Update protobuf-java to 3.25.2 by @wiringbits-bot in #58
- Update decline to 1.4.0 by @wiringbits-bot in #33
- Update guava to 33.0.0-jre by @wiringbits-bot in #57
- Update jackson-databind to 2.16.1 by @wiringbits-bot in #54
- Update sbt-assembly to 0.15.0 by @wiringbits-bot in #53
- Update cats-effect-testing-specs2 to 0.5.4 by @wiringbits-bot in #52
- Update diffx-specs2 to 0.9.0 by @wiringbits-bot in #43
- Update json-smart to 2.4.11 by @wiringbits-bot in #67
- Update mysql-connector-java to 8.0.33 by @wiringbits-bot in #66
- Update joda-time to 2.10.14 by @wiringbits-bot in #65
- Update scala-uri to 4.0.3 by @wiringbits-bot in #62
- Update aws-java-sdk-dynamodb, ... to 1.12.637 by @wiringbits-bot in #51
- Update sbt-tpolecat to 0.4.4 by @wiringbits-bot in #61
- Update kafka-clients to 7.5.3-ce by @wiringbits-bot in #70
- Update log4j-core to 2.22.1 by @wiringbits-bot in #71
- Update sbt-buildinfo to 0.11.0 by @wiringbits-bot in #22
- Update google-cloud-storage to 2.31.0 by @wiringbits-bot in #29
- Update log4j-to-slf4j to 2.22.1 by @wiringbits-bot in #72
- Update commons-text to 1.11.0 by @wiringbits-bot in #69
- Update netty-all, netty-codec to 4.1.104.Final by @wiringbits-bot in #63
- Update libthrift to 0.19.0 by @joaolcorreia in #73
- Update sbt-tpolecat to 0.5.0 by @wiringbits-bot in #76
- Update mysql-connector-java to 8.2.0 by @wiringbits-bot in #78
- Update log4cats-slf4j to 1.3.1 by @wiringbits-bot in #95
- Update aws-msk-iam-auth to 1.1.9 by @wiringbits-bot in #99
- Update cloudwatch, dynamodb, eventbridge, ... to 2.18.41 by @wiringbits-bot in #97
- Update specs2-core, specs2-mock, ... to 4.20.4 by @wiringbits-bot in #93
- Update cats-effect to 2.5.5 by @wiringbits-bot in #94
- Update slf4j-simple to 2.0.11 by @wiringbits-bot in #91
- Update scalafmt-core to 2.6.4 by @wiringbits-bot in #88
- Update snakeyaml to 2.2 by @wiringbits-bot in #96
- Update scalacheck to 1.14.3 by @wiringbits-bot in #86
- Update sbt to 1.5.8 by @wiringbits-bot in #85
- Update scala-parser-combinators to 2.3.0 by @wiringbits-bot in #84
- Update decline to 2.4.1 by @wiringbits-bot in #75
- Update sbt-assembly to 2.1.5 by @wiringbits-bot in #74
- Update joda-time to 2.12.6 by @wiringbits-bot in https://github.com/opensnowca...
1.0.0
What's Changed
- kinesis: Allow encoding output as JSON by @AlexITC in #1
- eventbridge: Add module by @AlexITC in #4
- Updated app naming to opensnowcat by @joaolcorreia in #5
- OpenSnowcat Docs by @AlexITC in #6
- Fix release.yml workflow by @AlexITC in #15
- Prepare release by @AlexITC in #17
New Contributors
- @AlexITC made their first contribution in #1
- @joaolcorreia made their first contribution in #5
Full Changelog: https://github.com/opensnowcat/opensnowcat-enrich/commits/1.0.0
NOTE: This is a fork from https://github.com/snowplow/enrich/tree/cc06fa29beefdcdbb4facd2559a53d7ae027d88b