https://github.com/melchisedech333/log-viewer
:hammer: Solution to receive log and debug messages from applications that do not have access to standard input and output. Like Linux Daemons, fork() processes and any similar application. Messages are sent through Non-Blocking Socket, and received in an Electron application.
https://github.com/melchisedech333/log-viewer
child-process debug debugger debugger-visualizer debugging debugging-tool debugging-tools fork-process linux-deamon log log-viewer log-visualization log-visualizer logger logging non-blocking non-blocking-communication non-blocking-io non-blocking-sockets sub-process
Last synced: 2 months ago
JSON representation
:hammer: Solution to receive log and debug messages from applications that do not have access to standard input and output. Like Linux Daemons, fork() processes and any similar application. Messages are sent through Non-Blocking Socket, and received in an Electron application.
- Host: GitHub
- URL: https://github.com/melchisedech333/log-viewer
- Owner: melchisedech333
- License: bsd-3-clause
- Created: 2022-09-23T16:39:15.000Z (over 2 years ago)
- Default Branch: main
- Last Pushed: 2022-10-17T19:16:13.000Z (over 2 years ago)
- Last Synced: 2025-02-03T10:33:38.557Z (4 months ago)
- Topics: child-process, debug, debugger, debugger-visualizer, debugging, debugging-tool, debugging-tools, fork-process, linux-deamon, log, log-viewer, log-visualization, log-visualizer, logger, logging, non-blocking, non-blocking-communication, non-blocking-io, non-blocking-sockets, sub-process
- Language: C
- Homepage:
- Size: 717 KB
- Stars: 1
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme-pt.md
- Funding: .github/FUNDING.yml
- License: license
Awesome Lists containing this project
README
Language: EN-US
Quando você está implementando coisas como Linux Daemons, ou qualquer aplicação onde você não possua acesso ao IO padrão, é interessante ter uma aplicação para receber mensagens do seu programa.
É exatamente isto que esta aplicação faz, ela se conecta em um servidor TCP na porta 1337 (você pode editar a porta e o endereço IP de destino no arquivo example/debug.h).
Para não travar a aplicação ao realizar o envio das mensagens, é utilizado técnicas de Non-Blocking Socket.
**Se meu código te ajudou em algo, considere [ser um patrocinador](https://github.com/sponsors/melchisedech333) :blue_heart:**
:computer: Exemplo de uso
---Basta adicionar o header debug.h em sua aplicação, e utilizar como demonstra o código abaixo.
```c
#include "debug.h"int main (int argc, char *argv[])
{
/**
* Detailed message example.
*/
say_debug_detail("Iesus Hominum Salvator!");/**
* Example of common usage.
*/
for (int a=0; a<10; a++) {
say_debug("Message %d: Iesus Hominum Salvator!", a);
sleep(1);
}return 0;
}
```Para utilizar a aplicação de visualização das mensagens (como mostra na imagem acima), basta abrir-la utilizando o Electron. Lembrando que a versão do Electron utilizada é a 19.0.0, e você pode encontrá-la aqui: https://github.com/electron/electron/releases/tag/v19.0.0
Tudo que você precisa fazer é executar o Electron, passando como parâmetro para ele o diretório da aplicação.
```bash
electron .
```
:smiley: Autor
---Patrocinar: [melchisedech333](https://github.com/sponsors/melchisedech333)
Twitter: [Melchisedech333](https://twitter.com/Melchisedech333)
LinkedIn: [Melchisedech Rex](https://www.linkedin.com/in/melchisedech-rex-724152235/)
Blog: [melchisedech333.github.io](https://melchisedech333.github.io/)
:scroll: Licença
---[ BSD-3-Clause license](./license)
## Lembre-se de deixar
uma linda estrelinha :star_struck: