Skip to content

Commit 84de78a

Browse files
committed
0.7.6
1 parent 8aff3a2 commit 84de78a

File tree

1 file changed

+31
-22
lines changed

1 file changed

+31
-22
lines changed

README.md

Lines changed: 31 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -18,11 +18,12 @@ Terminal user interface for reading logs from `journalctl`, file system, Docker
1818

1919
This tool is inspired by and with love for [LazyDocker](https://github.com/jesseduffield/lazydocker) and [LazyGit](https://github.com/jesseduffield/lazygit), as well as is included in [Awesome-TUIs](https://github.com/rothgar/awesome-tuis?tab=readme-ov-file#development) and [Awesome-Docker](https://github.com/veggiemonk/awesome-docker?tab=readme-ov-file#terminal-ui), check out other useful projects on the repository pages.
2020

21-
![interface](/img/fuzzy.jpg)
21+
![interface](/img/regex.png)
2222

2323
## Functional
2424

25-
- Simple installation, download one executable file without dependencies for starting.
25+
- Simple installation, to run download one executable file without dependencies and settings.
26+
- Displays the current log output in real-time (updated every 5 seconds, file logs are updated only when there are changes).
2627
- List of all units (`services`, `sockets`, etc.) via `systemctl` with current running status.
2728
- View all system and user journals via `journalctl` (tool for reading logs from [systemd-journald](https://github.com/systemd/systemd/tree/main/src/journal)).
2829
- List of all system boots for kernel log output.
@@ -33,23 +34,27 @@ This tool is inspired by and with love for [LazyDocker](https://github.com/jesse
3334
- Kubernetes pods via `kubectl`
3435
- Windows Event Logs (in test mode via `powershell` and reading via `wevtutil`) and application logs from Windows file system.
3536
- Filtering lists to find the desired journal.
36-
- Displays the currently selected log output in real-time.
3737

3838
Supports 3 filtering modes:
3939

4040
- **Default** - case sensitive exact search.
4141
- **Fuzzy** - custom inexact case-insensitive search (searches for all phrases separated by a space anywhere on a line).
4242
- **Regex** - search with regular expression support (based on the built-in [regexp](https://pkg.go.dev/regexp) library), case insensitive by default (in case a regular expression syntax error occurs, the input field will be highlighted in red).
4343

44+
## Coloring
45+
4446
Supported coloring groups for output:
4547

48+
- **Custom** - URLs, file paths and processes in UNIX.
49+
- **Yellow** - known names (host name and system users) and warnings.
4650
- **Green** - keywords indicating success.
47-
- **Red** - keywords indicating an error.
51+
- **Red** - keywords indicating error.
4852
- **Blue** - statuses (info, debug, etc), actions (install, update, etc) and HTTP methods (GET, POST, etc).
49-
- **Light Blue** - numbers (date, time, bytes, ip and mac-addresses).
50-
- **Yellow** - known names (host name and system users) and warnings.
51-
- **Purple** - url and full paths in the file system.
52-
- **Custom** - unix processes.
53+
- **Light blue** - numbers (date, time, bytes, versions, percentage, IP and MAC addresses).
54+
55+
A full list of all keywords can be found in the [color.log](/color.log) file (used for testing only). If you have suggestions for improving coloring (e.g. adding new words), you can open an [issue](https://github.com/Lifailon/lazyjournal/issues) for a new feature.
56+
57+
Coloring directly affects the loading time of the log, to increase the performance of reading large logs, it is possible to disable coloring using the `Ctrl+Q`.
5358

5459
## Install
5560

@@ -82,33 +87,29 @@ If you an Arch Linux user you can also install from the [AUR](https://aur.archli
8287
paru -S lazyjournal
8388
```
8489

85-
Thank you [Matteo Giordano](https://github.com/malteo) for upload and update the package in AUR.
86-
8790
### Conda / mamba / pixi (Linux / macOS / Windows)
8891

89-
If you use package managers like conda or mamba, you can install lazyjournal from [conda-forge](https://anaconda.org/conda-forge/lazyjournal):
92+
If you use package managers like conda or mamba, you can install `lazyjournal` from [conda-forge](https://anaconda.org/conda-forge/lazyjournal):
9093

9194
```shell
9295
conda install -c conda-forge lazyjournal
9396
mamba install -c conda-forge lazyjournal
9497
```
9598

96-
You can install lazyjournal user-globally using [pixi](https://prefix.dev):
99+
You can install `lazyjournal` user-globally using [pixi](https://prefix.dev):
97100

98101
```shell
99102
pixi global install lazyjournal
100103
```
101104

102105
### Homebrew (macOS / Linux)
103106

104-
Use the following command to install lazyjournal using [Homebrew](https://formulae.brew.sh/formula/lazyjournal):
107+
Use the following command to install `lazyjournal` using [Homebrew](https://formulae.brew.sh/formula/lazyjournal):
105108

106109
```shell
107110
brew install lazyjournal
108111
```
109112

110-
Thank you [Ueno M.](https://github.com/eunos-1128) for upload and update the package in homebrew and conda.
111-
112113
### Windows
113114

114115
Use the following command to quickly install in your PowerShell console:
@@ -139,10 +140,6 @@ You can also use Go for install the dev version ([Go](https://go.dev/doc/install
139140
go install github.com/Lifailon/lazyjournal@latest
140141
```
141142

142-
### Others
143-
144-
If you use other packag manager and want this package to be present there as well, open an issue or load it yourself and make [Pull requests](https://github.com/Lifailon/lazyjournal/pulls).
145-
146143
## Usage
147144

148145
You can run the interface from anywhere:
@@ -182,10 +179,11 @@ make lint
182179

183180
## Testing
184181

185-
Run unit tests to check functions and their performance:
182+
Unit tests cover all main functions and interface operation.
186183

187184
```shell
188-
go test -v
185+
make list # get a list of all tests
186+
make test n=TestMockInterface # run the selected test
189187
```
190188

191189
The test coverage report using CI Actions for Linux, macOS and Windows systems is available on the [Wiki](https://github.com/Lifailon/lazyjournal/wiki) page.
@@ -194,6 +192,7 @@ Testing in BSD-based systems is done in a home environment using [usup](https://
194192

195193
## Hotkeys
196194

195+
- `F1` - show help on hotkeys.
197196
- `Tab` - switch between windows.
198197
- `Shift+Tab` - return to previous window.
199198
- `Left/Right` - switch between journal lists in the selected window.
@@ -203,12 +202,22 @@ Testing in BSD-based systems is done in a home environment using [usup](https://
203202
- `<Shift/Ctrl>+<U/D>` - quickly move up and down (alternative for macOS).
204203
- `Ctrl+A` or `Home` - go to top of log.
205204
- `Ctrl+E` or `End` - go to the end of the log.
205+
- `Ctrl+Q` - enable or disable built-in output coloring.
206+
- `Ctrl+S` - enable or disable coloring via [tailspin](https://github.com/bensadeh/tailspin).
207+
- `Ctrl+R` - update all log lists.
206208
- `Ctrl+W` - clear text input field for filter to quickly update current log output without filtering.
207209
- `Ctrl+C` - exit.
208210

209211
## Contributing
210212

211-
Since this is my first Go project, there may be some bad practices, BUT I want to make LazyJournal better. Any contribution will be appreciated! If you want to implement any new feature or fix something, please [open an issue](https://github.com/Lifailon/lazyjournal/issues) first.
213+
Since this is my first Go project, there may be some bad practices, BUT I want to make `lazyjournal` better. Any contribution will be appreciated! If you want to implement any new feature or fix something, please [open an issue](https://github.com/Lifailon/lazyjournal/issues) first.
214+
215+
Thanks to all participants for their contributions:
216+
217+
- [Matteo Giordano](https://github.com/malteo) for upload and update the package in `AUR`.
218+
- [Ueno M.](https://github.com/eunos-1128) for upload and update the package in `homebrew` and `conda`.
219+
220+
You can also upload the package yourself to any package manager you use and make [Pull Requests](https://github.com/Lifailon/lazyjournal/pulls).
212221

213222
## Alternatives
214223

0 commit comments

Comments
 (0)