Add a single curl step to any GitHub Actions job. Log lines stream to your browser
in real time as the workflow runs — filterable, shareable, and visible to your whole team
without needing a GitHub account.
You push a deploy and then refresh the GitHub Actions UI every 30 seconds. Log lines appear in batches, not in real time. You can't filter by keyword mid-run, can't share a live view with a stakeholder who doesn't have a GitHub account, and the moment the run finishes the live tail is gone.
For long-running workflows — database migrations, multi-stage builds, end-to-end test suites — waiting blind is frustrating. You want to see what's happening now, not after.
Add a run step that pipes output to BunnyLogs via curl. Open
bunnylogs.com/live/<your-uuid> in any browser. Log lines appear in
real time as each step runs — with level, step name as the program label, and full-text
search after the run completes.
Share the URL with a product manager, a client, or a teammate who isn't on GitHub. Set a keyword alert so you get a Slack ping the moment "ERROR" or "FAILED" appears in any run.
name: Deploy
on:
push:
branches: [main]
env:
BUNNY_URL: https://bunnylogs.com/live/YOUR-UUID
jobs:
deploy:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Log start
run: |
curl -s $BUNNY_URL \
-d "message=Deploy started by $GITHUB_ACTOR" \
-d "level=INFO" -d "program=github-actions"
- name: Run migrations
run: |
python manage.py migrate 2>&1 | while read line; do
curl -s $BUNNY_URL -d "message=$line" \
-d "program=migrate" -d "level=INFO"
done
- name: Log finish
run: |
curl -s $BUNNY_URL \
-d "message=Deploy complete ✓" \
-d "level=INFO" -d "program=github-actions"
Set a BunnyLogs alert for the keyword Error or FAILED in this stream. You'll get a Slack or webhook notification the moment a CI step fails — before GitHub even sends its email.
Real-time CI logs in your browser. Free to start.
Get started free Read the docs →