logdy-core

command module
v0.4.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Feb 11, 2024 License: Apache-2.0 Imports: 23 Imported by: 0

README ¶

Logdy - terminal logs in web browser

Webpage | Demo | Docs | Download | Blog

Supercharge terminal logs with web browser UI and low-code (TypeScript snippets written in the browser). Save 90% of time searching and browsing logs. It's like jq, tail, less, grep and awk merged together and available in a clean UI. Self-hosted, single binary.

Project status: Under development 🚧

Logdy is under heavy development and a lot of features is yet to be added. A feedback is welcome from early adopters. Feel free to post Issues, Pull Requests and contribute in the Discussions. Stay tuned for updates, visit Logdy Blog.

Demo

Visit demo.logdy.dev

autogenerate

Visit logdy.dev for more info.

Download precompiled binary

Naviage to releases Github page and download the latest release for your architecture. In addition you can add the binary to your PATH for easier access.

Quick start

Below are few examples of what Logdy can do. Whatever the below commands will produce, will be forwarded to a Web UI.

logdy stdin 'npm run dev'
logdy stdin 'node index.js'
logdy stdin 'go run .'
logdy stdin 'python script.py'
logdy stdin 'tail -f /var/log/nginx/access.log'

The following should appear

INFO[2024-02...] WebUI started, visit http://localhost:8080    port=8080

Open the URL Address and start building parsers, columns and filters.

Documentation

For product documentation navigate to the official docs.

Usage

Usage:
  logdy [command] [flags]
  logdy [command]

Available Commands:
  completion  Generate the autocompletion script for the specified shell
  demo        Starts a demo mode, random logs will be produced, the [number] defines a number of messages produced per second
  follow      Follows lines added to files. Example `logdy follow foo.log /var/log/bar.log`
  forward     Forwards the STDIN to a specified port, example `tail -f file.log | logdy forward 8123`
  help        Help about any command
  socket      Sets up a port to listen on for incoming log messages. Example `logdy socket 8233`. You can setup multiple ports `logdy socket 8123 8124 8125`
  stdin       Listens to STDOUT/STDERR of a provided command. Example `logdy stdin "npm run dev"`

Flags:
  -t, --fallthrough      When used will fallthrough all of the stdin received to the terminal as is
  -h, --help             help for logdy
  -n, --no-analytics     Opt-out from sending anonymous analytical data that helps improve Logdy
  -u, --no-updates       Opt-out from checking updates on program startup
  -p, --port string      Port on which the Web UI will be served (default "8080")
      --ui-pass string   Password that will be used to authenticate in the UI
  -v, --verbose          Verbose logs
      --version          version for logdy

Development

For development, we recommend running demo mode

go run . demo 1

The above command will start Logdy in demo mode with 1 log message produced per second. You can read more about demo mode.

If you would like to develop with UI, check readme for logdy-ui for instructions how to run both together during development.

Building

This repository uses static asset embedding during compilation. This way, the UI is served from a single binary. Before you build make sure you copy a compiled UI (follow the instructions about building) in assets directory.

Look at embed.go for more details on how UI is embedded into the binary.

For a local architecture build:

go build

Releasing

For a cross architecture build use gox. This will generate multiple binaries (in bin/ dir) for specific architectures, don't forget to update main.Version tag.

gox \
    -ldflags "-X 'main.Version=x.x.x'" \
    -output="bin/{{.Dir}}_{{.OS}}_{{.Arch}}" \
    -osarch="linux/amd64 windows/386 windows/amd64 darwin/amd64 darwin/arm64 linux/arm64"

Once it's ready, publish the binaries in a new Github release. Again, don't forget to update the version.

ghr v0.2.0 bin/

Documentation ¶

The Go Gopher

There is no documentation for this package.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL