Monitoring MSK events visually

0

We're using MSK for asynchronous messaging. Somoetimes some issues happen in consuming some messages and I need to know what messages are currently inside msk. Is there a GUI tool (from aws or 3rd party) that allows us to show all of these events? A plus would be for it to show me the consumed messages as well.

asked 7 months ago846 views
2 Answers
1

Hello,

Amazon Managed Streaming for Apache Kafka (MSK) primarily provides APIs and command-line interfaces for managing and interacting with Kafka clusters. This means that users typically work with MSK through the AWS CLI, SDKs, or scripts. At this time, we do not have a dedicated graphical user interface (GUI) for MSK.

However, AWS regularly updates its services and might introduce new features or tools. To find out if there is a GUI tool available for MSK in 2023, I recommend checking the AWS What's new blog for new features.

[+] Official Blog https://aws.amazon.com/blogs/aws/

Amazon Managed Streaming for Apache Kafka (MSK) primarily offers CloudWatch metrics and CloudWatch Logs for monitoring and troubleshooting. There wasn't a native GUI tool provided by AWS specifically for visualizing messages within MSK. You can create custom dashboards to display relevant metrics and logs related to your MSK clusters.

Monitoring

CloudWatch Metrics are part of the DEFAULT level monitoring and are included with the cluster at no additional charge. For example, you can monitor the MaxOffsetLag which refers to the maximum offset lag across all partitions in a topic after a consumer group consumes messages from that topic.

[+] Amazon MSK metrics for monitoring with CloudWatch https://docs.aws.amazon.com/msk/latest/developerguide/metrics-details.html

In Kafka, a consumer group is a set of consumers that work together to consume messages from one or more topics. Each message in a Kafka topic is assigned a unique offset, which is essentially a numerical identifier. The offset lag refers to the difference between the latest available message offset and the offset that the consumer group has currently consumed up to. In other words, it represents how far behind the consumer group is from the latest messages in a topic.

MaxOffsetLag is the highest offset lag value observed across all partitions in a given topic after a consumer group has consumed messages. It indicates the partition with the greatest lag, which can help in understanding if any particular partition is falling significantly behind in processing messages.

Keeping MaxOffsetLag low is important for real-time or near-real-time processing scenarios.

Suppose you have a topic with 3 partitions. If the MaxOffsetLag is 100 for partition 1, 50 for partition 2, and 150 for partition 3, then the overall MaxOffsetLag for the topic would be 150.

By leveraging CloudWatch logs and metrics, you can gain valuable insights into the behavior of your MSK cluster and troubleshoot any issues with message consumption effectively. Remember to monitor these logs and metrics regularly to proactively identify and address any potential problems.

Alternatively, you can monitor your MSK cluster with Prometheus, an open-source monitoring system for time-series metric data. You can publish this data to Amazon Managed Service for Prometheus using Prometheus's remote write feature.

[+] Open monitoring with Prometheus - https://docs.aws.amazon.com/msk/latest/developerguide/open-monitoring.html

Third Party Tools

Some third-party solutions may offer GUIs for managing Kafka clusters, including features for monitoring message consumption. There are several monitoring and visualization tools available in the market that can be integrated with MSK for enhanced monitoring and visualization capabilities. Some popular tools include Datadog, Splunk, New Relic, and Grafana.

As an AWS Support Engineer, we do not support 3rd party applications, so be sure to test and verify if they integrate with Amazon MSK and meet your specific requirements.

AWS
answered 7 months ago
0
Accepted Answer

Just leaving an answer here for the tool that we found that covered our needs. Might be helpful for other people.

We found a 3rd party tool called "UI for apache kafka" and it has an app in the aws marketplace (https://aws.amazon.com/marketplace/pp/prodview-ogtt5hfhzkq6a). We installed it and it covers our needs for now. Provides decent data about brokers, topics and most importnatly (for our case) details about all messages sent on each topic.

answered 7 months ago

You are not logged in. Log in to post an answer.

A good answer clearly answers the question and provides constructive feedback and encourages professional growth in the question asker.

Guidelines for Answering Questions