https://github.com/softwaremill/otterjet
Visualization of messages from a NATS JetStream server
https://github.com/softwaremill/otterjet
java java17 nats nats-jetstream nats-messaging nats-server nats-streaming
Last synced: about 1 month ago
JSON representation
Visualization of messages from a NATS JetStream server
- Host: GitHub
- URL: https://github.com/softwaremill/otterjet
- Owner: softwaremill
- License: apache-2.0
- Created: 2023-11-27T10:59:21.000Z (over 1 year ago)
- Default Branch: master
- Last Pushed: 2025-01-25T20:48:09.000Z (5 months ago)
- Last Synced: 2025-03-30T15:47:00.380Z (2 months ago)
- Topics: java, java17, nats, nats-jetstream, nats-messaging, nats-server, nats-streaming
- Language: Java
- Homepage: https://softwaremill.com/introduction-to-otterjet/
- Size: 1.44 MB
- Stars: 36
- Watchers: 15
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
![]()
# Welcome!
[](https://github.com/softwaremill/otterJet/actions?query=workflow%3A%22CI%22)
# OtterJet
OtterJet is a project designed to provide a visualization of messages from a NATS JetStream server. Offering a WEB interface for interacting with NATS JetStream servers.
This project is particularly useful for developers who need to monitor traffic during development.## Prerequisites
- Java 17 or higher
- NATS JetStream server## Features
- Reads messages from a NATS JetStream server.
- Deserializes messages based on the specified mode (protobuf or plaintext for now).
- Filters messages based on subject, type, and body content.
- Displays monitoring information in a web interface.## Setup
1. Clone the repository.
2. Navigate to the project directory.
3. Run `mvn clean install` to build the project.
4. Configure your NATS JetStream server details in the `application.properties` file.## Configuration
The following properties need to be set in the `application.properties` file:
- `read.mode`: The mode to use for deserialization (either `proto`, `plaintext` or `avro`).
- `read.subject`: The subject to read messages from.
- `read.proto.pathToDescriptor`: The path to the protobuf descriptor file (only required if `read.mode` is set to `proto`).
- `read.avro.pathToSchema`: The path to the avro schema (only required if `read.mode` is set to `avro`).
- `read.store.limit`: The maximum number of messages to store in memory. Default - 10000
- `read.startDate`: Optional date from which to start reading messages.## Usage
After building the project, you can run it using the command `mvn spring-boot:run`.
## Web Interface
### Messages page
### Monitoring page
## Troubleshooting
If you encounter any issues while setting up or running the project, please check the following:
- Ensure that your NATS JetStream server is running and accessible.
- Verify that the configuration properties in the `application.properties` file are correct.## Contributing
All suggestions are welcome :)
## Copyright
Copyright (C) 2023-2024 SoftwareMill [https://softwaremill.com](https://softwaremill.com).