Log Parser Playground
A playground that generates one log parsing activity at a time, and regenerates a new one when you complete each activity. It uses authentic log formats such as nginx access logs and syslog entries to simulate real parsing needs. The operator avoids repeats until it has exhausted the full activity list, then starts a new randomized cycle. Github: https://github.com/lpmi-13/logparser-lab-operator

A playground to practice parsing log lines via general Linux cli tools:
- grep
- awk
- sort
- uniq
- head
- wc
The lab includes 12 activity templates across four log families:
- Count unique IPs under a target prefix in a target hour
- Find the busiest Apache client IP for a target status code
- Count unique Apache error sources for a target status and prefix
- Rank the top requested paths under a target download-like prefix
- Find the most common Apache user agent for a target method and prefix
- Calculate a Nginx 2xx success rate for a target prefix and hour
- Sum Nginx bytes by IP for a target method and hour
- Find the username with the most failed SSH logins in a target hour
- Count distinct source IPs behind failed SSH logins for a target username
- Find the user with the most successful SSH logins in a target hour
- Count sudo authentication failures for a target user and hour
- Find the service with the most syslog error lines in a target hour
A real VM, not a container
Get root on a VM with its own kernel, so Docker, Kubernetes, and systemd just work.
Read the docs →
SSH from browser or CLI
Use the built-in web terminal, or connect with labctl ssh, plain ssh, scp, or rsync.
Read the docs →
Drive it with AI
Let Claude, Codex, or any MCP client start this playground and run commands in it.
Read the docs →
Expose HTTP(S) ports
Give any web app running inside the VM a public URL - for yourself or to share with others.
Read the docs →
Share terminals
Invite others into your terminal session, or open it yourself from another device.
Read the docs →
Customize with init scripts
Add shell scripts that run at boot to install packages, clone repos, or seed test data.
Read the docs →
Private networking
VMs reach the internet via NAT with no public IP; several VMs share bridge networks.
Read the docs →
Ephemeral or persistent
By default, VMs are destroyed when the session ends; enable persistence to keep the disks for next time.
Read the docs →
Built-in container registry
A private registry.iximiuz.com for every playground to share images across services and VMs.
Read the docs →