A simplified, real-time log monitoring tool built during Be Hackathon in under 48 hours!
Keep an eye on your long-running programs with intelligent alerts and a simplified web interface. Whether it's machine learning models training overnight or complex simulations crunching data, FloWatcher alerts you instantly, saving you time and headaches.
- Web Dashboard: Simplified interface to view logs, alerts, and execution history.
- Real-Time Log Monitoring: Watch your scripts execute live.
- Customizable Alert Rules: Personalize alerts by defining rules with natural language queries, keywords, or specific log levels.
- Alert System: Keep track of specific logs and send notifications via Telegram or in-app alerts.
Create the .env from .env.example and update the following:
OPENAI_API_KEY = "your_open_ai_api_key"
TELEGRAM_BOT_TOKEN = "your_telegram_bot_token"
TELEGRAM_CHAT_ID = "your_telegram_chat_id"
For the OpenAI API key, you can get it from OpenAI's platform. You will only need it if you want to define natural language rules.
The Telegram bot token and chat ID can be obtained by following the instructions in the Telegram Integration section below.
Using uv (recommended)
You can run the following command which directly creates the virtual environment with the dependenies from pyproject.toml and starts the Flask app.
uv run python index.pyUsing pip (oldschool)
python -m venv venv # create virtual env
source venv/bin/activate # Windows: venv\Scripts\activate
pip install -r requirements.txt # install dependencies
python index.py # start serverBy default, the Flask web interface will be available at http://localhost:4980.
FloWatcher integrates with Telegram for instant notifications. Here's how to set it up:
-
Create a Telegram Bot:
- Open Telegram and search for @BotFather.
- Send
/newbotand follow the prompts to create your bot. - Save the Bot Token provided.
-
Get Your Chat ID:
- Start a chat with your new bot and send a message to it.
- Visit
https://api.telegram.org/bot<YOUR_BOT_TOKEN>/getUpdatesin your browser. - Look for the
"chat":{"id":...}in the JSON response – that's your Chat ID.
-
Configure Environment:
- Add the
TELEGRAM_BOT_TOKENandTELEGRAM_CHAT_IDto your.envfile.
- Add the
Now, you'll receive Telegram alerts alongside in-app notifications!
- Define alert rules: You can define three types of rules.
- Natural language: Uses an LLM to determine if the log matches a natural language query.
- Keywords: Searches for that keyword in the log.
- Value: Checks if a specific field from a log matches said value (e.g., level: error).
A log example according to our data schema:
{
"source": "stdout",
"level": "info",
"message": "[INFO] Train acc: 0.9233 | loss: 0.2082 || Val acc: 0.9227 | loss: 0.2080",
"timestamp": "2026-05-12T18:44:45.726103",
"event_id": "c05d357f-3bd9-4df4-b7ad-411349cd3877"
}- Execute the script you want to monitor: Copy the absolute path of the script to execute. In the sample_scripts folder, there are some examples with logs for you to test. Paste it in the form of the interface and click execute.
- Monitor: Check the alerts, live logs, and history sections, and check Telegram bot messages if configured correctly. You can also access the Flask server from your mobile phone if you are on the same network or through a VPN.



