Skip to content

ChrisCarini/logshipper-intellij-plugin

Repository files navigation

Logshipper

All Contributors

A plugin for JetBrains IDEs to ship logs to a remote logstash service.

GitHub License JetBrains IntelliJ Plugins JetBrains IntelliJ Plugins JetBrains IntelliJ Plugins All Contributors GitHub Workflow Status GitHub Workflow Status

This plugin adds a custom java.util.logging Handler to the root Logger of IntelliJ, allowing all logs to be shipped to a logstash server.

Configuration

Users are able to configure the logstash:

  • hostname
  • port
  • reconnect delay

Additionally, users are able to:

  • include location information from the LogRecord.
  • generate sample log messages for testing / debugging purposes.
    • Note: this may fill up your log, as the test log messages happen once every 2 seconds.

Demo

For ease, this repo also includes the necessary docker-compose files to setup the ELK stack.

Use the ./elk_stack.sh bash script to init / start / stop / restart / status / purge ELK stack.

Quick Start

  1. Start ELK

    ./elk_stack.sh init
  2. Launch the IDE with Logshipper plugin

  3. Configure Logshipper settings

    1. Hostname: localhost
    2. Port: 5000
  4. Navigate to http://localhost:5601 and login with elastic/changeme.

  5. Find the 'Logshipper Telemetry PoC' dashboard

  6. Profit!

elk_stack.sh man page

Usage: ./elk_stack.sh <subcommand> [options]

Subcommands:
    init      Start the ELK Stack & add sample Logshipper dashboard

    start     Start the ELK Stack
    stop      Stop the ELK Stack
    status    Status of ELK Stack
    restart   Restart the ELK Stack

    purge     Stop & delete all containers associated with Logshipper

Note: This script assumes you have 'docker-compose' installed.

Contributors ✨

Thanks goes to these wonderful people (emoji key):

Chris Carini
Chris Carini

🐛 💻 📖 💡 🤔 🚧 💬 👀

This project follows the all-contributors specification. Contributions of any kind welcome!