Generate realistic mock log files for testing, development, and demos. Choose a log format, set the options, and download or copy the output — all in your browser, nothing sent to a server.
1 – 5,000 lines
The most common web server log format. Each line records a single HTTP request: client IP, timestamp, request method + path, HTTP status code, response size, referer, and user agent. Follows the Combined Log Format (%h %l %u %t "%r" %s %b "%{Referer}i" "%{User-agent}i"), which both Apache and Nginx support natively.
Records server-side errors, PHP fatal errors and warnings, permission denials, and ModSecurity blocks. Includes severity level (error, warn, notice, info), PID, and client IP.
Nginx error entries include upstream connection failures, FastCGI errors, SSL handshake failures, and rate limiting events. Uses ISO timestamp format and connection IDs prefixed with *.
Models Debian/Ubuntu /var/log/auth.log entries for SSH sessions: accepted/failed password authentication, accepted public key, invalid user attempts, and session open/close events. Adjust the error rate to control the ratio of failed authentication attempts — useful for simulating brute force attack scenarios.
Standard syslog format with hostname, process name, and PID. Includes messages from kernel, cron, sudo, systemd, sshd, and Postfix — typical for a production Linux server.
MySQL 8-style error log with ISO timestamp, thread ID, severity (ERROR/WARNING/NOTE), error code, and component tag. Includes InnoDB, authentication, replication, and connection errors.
PostgreSQL log entries with UTC timestamp, PID, and message. Covers FATAL authentication errors, constraint violations, connection events, autovacuum, and checkpoint logs.
Public IPs are randomly generated and will not correspond to any real host. Private IPs (192.168.x.x, 10.0.1.x) follow standard RFC 1918 ranges but are similarly random. No real system or user data is used.
For access logs, the error rate controls the percentage of HTTP 4xx/5xx responses. For auth logs, it controls the percentage of failed/invalid login attempts. Set it higher to simulate attack traffic or an unstable service.
Up to 5,000 lines can be generated at a time. For larger files, generate multiple batches and concatenate them. A typical Apache access log line is about 200–300 bytes, so 5,000 lines produces roughly 1–1.5 MB.
Lines are sorted alphabetically after generation, which approximates chronological order for most formats. For strict chronological ordering, import the file into a log tool and sort by the parsed timestamp field. If your logs use epoch timestamps, the Unix Timestamp Converter can translate them to readable dates.
This website may contain affiliate links. If you click on an affiliate link and make a purchase, we may receive a small commission at no additional cost to you.