Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/mollusc-labs/clark
Modern logging dashboard and REST API for syslog
https://github.com/mollusc-labs/clark
dashboard hacktoberfest logging perl perl5 rest rsyslog typescript vue
Last synced: 2 months ago
JSON representation
Modern logging dashboard and REST API for syslog
- Host: GitHub
- URL: https://github.com/mollusc-labs/clark
- Owner: mollusc-labs
- License: bsd-3-clause
- Created: 2023-03-17T20:49:23.000Z (almost 2 years ago)
- Default Branch: main
- Last Pushed: 2024-03-30T04:28:35.000Z (9 months ago)
- Last Synced: 2024-09-29T18:41:49.749Z (3 months ago)
- Topics: dashboard, hacktoberfest, logging, perl, perl5, rest, rsyslog, typescript, vue
- Language: Perl
- Homepage:
- Size: 369 KB
- Stars: 8
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Clark
A free and open-source logging dashboard, and REST API for `rsyslog` and theoretically any other syslog-daemon.
To get started, checkout the `QUICKSTART.md` file at the root of the project.![image](https://user-images.githubusercontent.com/75388349/232936550-233012d6-a2e4-402a-878a-7401902152c7.png)
## TODO
Clark is currently in a work-in-progress state. The following things still need to be done:- [X] Make login page nice
- [ ] User and privilege management
- [ ] Ability to change your password
- [X] Time boxed dashboards
- [X] Logging via rsyslog
- [X] REST API
- [ ] Graphs
- [X] Log-in
- [X] Custom dashboards
- [X] Api Keys
- [X] Full-text search## How to use
1. Make sure you have Perl >5.10 and the following packages installed:
- On Ubuntu you can install them like this:
```
sudo apt install libio-prompter-perl libterm-readkey-perl
```
- Or on other distros with CPAN:
```
sudo cpan install IO::Prompter Term::ReadKey
```
2. Run Clarks system configuration script: `./setup.pl`
3. Make sure you have `docker` and `docker compose`
4. Run the following commands to install and run Clark (the first install may take a few minutes):
```bash
git clone https://github.com/mollusc-labs/clark
cd clark
docker-compose up -d
```
5. Read `QUICKSTART.md` to figure out what logging configuration works for you!
6. Happy logging!## Use in production
It is highly recommended to place Clark behind a proxy like `NGiNX`, `httpd` or similar, before exposing it to the internet.
You will also want to ensure that you are using `HTTPS`.## Troubleshooting
#### Port is closed
`setup.pl` will configure `rsyslog` to use port `514` for both UDP and TCP traffic, some people may want to change these
or are simply unable to open these ports. In that case edit `rsyslog.d/remote.conf` to use whatever port you'd like.#### Firewalls
If you plan to log over the internet (not recommended outside of the REST API) you will need to open the port specified
in the `rsyslog.d/remote.conf`, this is defaulted to `514` for both TCP and UDP.## Contributing
Clark is a Perl application using `Mojolicious` that uses a `Vue3` frontend. Any and all contributions will be considered!
Make sure your Perl code follows the `.perltidyrc`'s configuration before you make any pull-requests. Thanks!#### How to run in development
Run `docker-compose up -d clark_database` and `setup.pl`, then install all of the CPAN dependencies listed in the `cpanfile`.Now you can run the frontend with `cd frontend && yarn dev`, and the backend with `./dev.sh`.
## License
Clark is licensed under the `BSD-3 Clause` license, to learn more, please view the `LICENSE` file at the root of
the project.