Free

Free coded apps to suit all. No sign up, no email, usable offline, updates when I can, feedback welcome. Send feedback

Thinking

Is there a free task scheduler with a history log?

Yes. Schedule by Zaweba is free software that records every run with its output, errors and exit code, kept for 90 days by default, and flags failures.

Is there a free task scheduler with a history log?

There is. Schedule by Zaweba is free software for Windows that keeps a full history of every run: what started it, when it started and ended, how long it took, which attempt it was, its exit code, and the output and error output it produced. History is kept for 90 days by default, and a failure brings up a notification so you know without having to look.

A history is the difference between hoping a job ran and knowing it did. That is what Schedule was built around.

What the history records

Every run gets an entry. The trigger or timetable that started it is there, so you can tell a scheduled run from a Run now or a job started by a USB drive being plugged in. Start, end and duration show when it happened and how long it took. The attempt number shows whether a retry was needed.

The exit code tells you whether it worked. For web calls, the HTTP status code is recorded in its place. For scripts and programs, the output and error output are captured, the last 64 KB of each stream by default, so you can read exactly what the job said.

Runs cut off by a crash or power cut are marked Interrupted rather than left looking as if they are still going. Runs skipped because a condition was not met say why. Runs missed while the PC was off are noted, or run once by catch-up if you turned it on.

Finding what you are looking for

Filter by job to see one job's record. Filter by status to see only failures. Filter by text to search the output, which is handy when a script prints the name of the file it was working on and you want to know when a particular file was handled.

Hearing about failures

A history is only useful if you look at it, so Schedule also tells you. A Windows notification appears when a job fails, and optionally when it succeeds, and clicking it opens the history. You can also have an email sent on failure through your own mail server, with host, port, security, optional sign-in, From and To. The password is encrypted for your Windows user, and Send a test email checks the settings.

What it schedules

Programs with arguments and a working folder. PowerShell, batch, PHP and Python scripts, from a file or typed in. Calls to web addresses with any common method. Files, folders and websites to open. Macro by Zaweba macros and Backup by Zaweba folder pairs.

Timetables are written in plain English, such as every weekday at 7:00 or last Friday of the month, or as cron. A preview shows the next 10 run times before you save. Jobs can also start on triggers: login, startup, idle, folder changes, USB drives, networks, programs starting or closing, or mains power.

How it differs from what comes with Windows

Windows has its own Task Scheduler, which many people find hard to read. Schedule leaves it alone and never creates tasks in it. Its Windows tasks tab lists Task Scheduler's tasks read-only in plain English, and can copy simple ones into Schedule as new jobs, so you can move over gradually.

Schedule runs as you from the notification area and needs no administrator rights. Jobs run while you are signed in to Windows.

Getting started with the history in mind

Write scripts that print what they are doing and exit with a non-zero code on failure. That way the history tells a clear story, and failures are marked as failures. After creating a job, use Run now once and read its entry before you trust the timetable.

A scheduler that keeps a proper record is free, and it is Schedule by Zaweba.