All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog and this project adheres to Semantic Versioning.
- Upgrade go to 1.23.2
- Upgrade integrations SDK so the interval is variable and allows intervals up to 5 minutes
- Updated golang version to v1.23.1
- Updated golang version to v1.22.5
- Updated golang version to v1.22.2
- Updated golang to version v1.21.7 to fix a vulnerability
- Updated golang.org/x/sync to v0.6.0
- Updated github.com/newrelic/infra-integrations-sdk to v3.8.2+incompatible
- Upgraded golang.org/x/crypto from 0.14.0 to 0.17.0
- A new config option
ForceTopicSampleCollection
was added to collectTopicSampleCollection
even ifLocalOnlyCollection
is enabled
- Moved all references of sarama library from shopify to IBM
- Updated golang.org/x/sync to v0.4.0
- Updated golang version to 1.21
- Updated golang to v1.20.7
- Updated github.com/newrelic/nrjmx/gojmx digest
- Updated golang.org/x/sync to v0.3.0
- Updated github.com/stretchr/testify to v1.8.4 - Changelog 🔗
- Updated github.com/stretchr/testify to v1.8.3 - Changelog 🔗
- Updated github.com/newrelic/nrjmx/gojmx digest
- Updated golang to v1.20
- Compile the integration statically
- Bump dependencies:
golang.org/x/net
v0.6.0 --> v0.7.0
- Bump to golang 1.20
- Bump github.com/stretchr/testify from 1.8.1 to 1.8.2 (#212)
- Bump dependencies:
github.com/Shopify/sarama
v1.37.2 --> v1.38.1
- Bump to golang 1.19
golang.org/x/sync
v0.0.0-20220923202941-7f9b1623fab7 --> v0.1.0
- Bump dependencies:
nrjmx
v2.0.1 -> v2.3.2
- Fixed a bug caused by the sarama library in some scenarios. It can return a nil assigment and nil error for an unassigned consumer in a topic.
- Bump dependencies:
sarama
v1.36.0 -> v1.37.2gojmx
v0.0.0-20220818135048-2c786ece1d31 -> v0.0.0-20221004104925-6819f176e889sync
v0.0.0-20220722155255-886fb9371eb4 -> v0.0.0-20220923202941-7f9b1623fab7 - Changed Dependency:
github.com/xdg/scram
v0.0.0-20180814205039-7eeb5667e42c ->github.com/xdg-go/scram
v1.1.1
- Fixed a bug that prevented -collect_topic_size and -collect_topic_offset from working as expected
- Bump dependencies:
gojmx
v0.0.0-20220801092610-d842b96425bf -> v0.0.0-20220818135048-2c786ece1d31
- Bump dependencies:
sarama
v1.34.1 -> v1.36.0gojmx
v0.0.0-20220422131558-879b33f09229 -> v0.0.0-20220801092610-d842b96425bfsync
v0.0.0-20210220032951-036812b2e83c -> v0.0.0-20220722155255-886fb9371eb4
This new version adds two new features to monitor inactive consumers. We encourage you to take a look at this new features in here.
- CONSUMER_GROUPS flag removed, CONSUMER_GROUP_REGEX should be used instead.
- COLLECT_BROKER_TOPIC_DATA has been removed (It was not having any effect).
- BOOTSTRAP_BROKER_JMX_USER and BOOTSTRAP_BROKER_JMX_PASSWORD are honored taking precedence to DEFAULT_JMX_USER and DEFAULT_JMX_BROKER on Bootsrap discovery.
- Autodetect Consumer/Producer names (clientID) (#178)
- Offset collection for consumer groups with inactive consumers using flag INACTIVE_CONSUMER_GROUP_OFFSET (#172)
- Report consumer-group offset metrics by topic using flag CONSUMER_GROUP_OFFSET_BY_TOPIC (#172)
- Extra logging for broker collection on verbose mode
- Upgrade pipeline to Go 1.18
- Bump dependencies:
sarama
v1.31.1 -> v1.32.0infra-integrations-sdk
v3.7.1+incompatible -> v3.7.2+incompatiblegojmx
v0.0.0-20220119164809-485b71bffc97 -> v0.0.0-20220422131558-879b33f09229go-zookeeper
v0.0.0-20190923202752-2cc03de413da -> v0.0.0-20201211165307-7117e9ea2414
- Add the creation of the consumer image for testing/canaries.
- Upgraded Sarama library to 1.30.1 in order to support Kafka latest versions (up to 3.0)
- Added consumer-offset integration test
- Moved default config.sample to V4, added a dependency for infra-agent version 1.20.0
Please notice that old V3 configuration format is deprecated, but still supported.
- Support for ARM
- New argument topic_source to be either broker or zookeeper (default broker)
- Upgraded github.com/newrelic/infra-integrations-sdk to v3.6.7
- Added integration tests
- JMX logging shows host and port
- Add debug broker logs from Zookeeper
- Upgraded github.com/newrelic/infra-integrations-sdk to v3.6.6
- Switched to go modules
- Upgraded pipeline to go 1.16
- Replaced gometalinter with golangci-lint
- Fixed a bug that prevented -sasl_gssapi_disable_fast_negotiation from working as expected
- expose option to disable FAST negotiation to resolve issues with Active Directory
- Adds a basic TCP connection check to JMX port of all brokers
- Make nrjmx binary name relative to PATH
- Added closing of Zookeeper connections to avoid having them timeout and flood Zookeeper logs
- Removed the consumer group limit for consumer offset collection
- Updated Sarama to latest version
- Incorrect command in sample log
- Exit after a connection error is returned from a JMX query
- Bug in which bootstrap broker collection would combine multi-broker collection results
- Broker ID mismatch
- Add host to producer and consumer entity IDs
- Raise topic limit to 10000
- SASL/PLAIN and SASL/SCRAM auth methods
- TLS configuration for both SSL and SASL_SSL
- Kerberos authentication
- Make consumer/producer config independent of broker config
collect_topic_offset
argument. Useful when you want offsets for topics that aren't actively being consumed
- kafka_version argument to lower the targeted API version if necessary
- Cluster name attribute on metrics
- Capture internal logging for Sarama
- Panic on failed client connection
- Broken makefile
- Connect to kafka with a bootstrap broker
- Removed hard dependency on zookeeper configuration
- Local-only broker metric collection
- Additional debug logging around offset collection
- Avoid segfault by detecting error connecting
- Topic bucket option that allows topic collection to be split between multiple instances
- Bundle nrjmx
- Renamed the integration executable from nr-kafka to nri-kafka in order to be consistent with the package naming. Important Note: if you have any security module rules (eg. SELinux), alerts or automation that depends on the name of this binary, these will have to be updated.
- Remove windows definition from linux build
- Support for attempting multiple connection protocols to broker
- Rollup metrics for consumer offsets
consumer_group_regex
argument
- Deprecated
consumer_groups
in favor ofconsumer_group_regex
- Add port to broker entityName to increase uniqueness
- Better log messages for failed hwm collection
- Support for PROTOCOL_MAP configuration in Zookeeper
- Added documentation in sample config file for regex list mode
- Regex list mode for Kafka
- SSL support for JMX connections
- Changed the entity namespaces to be kafka-scoped
- ClusterName is a required argument to better enforce uniquene
- Updated Definition file protocol version to 2
- Host broker hosts and ports are parsed from Zookeeper
- Added SSL support for consumer offset feature
- Updated to 1.0.0
- Updated sample file with correct offset example
- Renamed
topic.bytesWritten
tobroker.bytesWrittenToTopicPerSecond
- Values for
topic_mode
are now lower cased
- Hardcoded limit for topic collection
- Source Type on all metrics with
attr=Count
toRate
- Dynamic lookup of Consumer Groups and Topics on Consumer Offset mode. The dynamic lookup would only correctly work in very specific set of circumstances.
- Consumer offsets and lag
- Renamed kafka-config.yml.template to kafka-config.yml.sample
- Added comments to kafka-config.yml.sample file
- Fixed spellings in spec.csv file
- Added nrjmx dependency when installing the package
- Added additional debug logging statements to assist in debugging a customers environment
- Fixed topic_mode argument to parse
List
as a mode rather thanSpecific
to match documentation - Changed
kafka-config.yml.sample
tokafka-config.yml.template
- Added zookeeper_path argument
- Initial version: Includes Metrics and Inventory data