PHP

Logwatch: Catch the Intruder

Parse a flood of raw server logs, tally the status codes, and catch a brute-force attack in the act. The daily work of backend and security engineers.

PHPIntermediatePortfolio piece

What you'll be able to build

Parse a flood of raw server logs, tally the status codes, and catch a brute-force attack in the act. The daily work of backend and security engineers. Along the way you pick up real, transferable PHP skills, not just this one project:

  • preg_match capture groups
  • tallying with associative arrays
  • grouping and counting
  • threshold-based detection rules
  • defensive parsing (skip malformed lines)
  • arsort to rank offenders

A course like this one

Yours is built from your own placement, so module count and depth will differ. This map shows what a intermediate-level PHP learner building Logwatch actually gets.

  1. Module 1: Values, variables, and echo5 lessons

    Builds the script for your logwatch.

  2. Module 2: Associative arrays and the array toolkit5 lessons

    Builds the array pipeline workflow for your logwatch.

  3. Module 3: Control flow, truthiness, and predicting output5 lessons

    Builds the function that powers your logwatch.

  4. Module 4: Functions, arrays, and reading errors5 lessons

    Builds the reusable class for your logwatch.

  5. Module 5: Classes, objects, and program design5 lessons

    Builds the associative model for your logwatch.

  6. Module 6: Shipping a reusable PHP tool3 lessons

    Builds the command-line tool for your logwatch.

How the lessons actually work

Leans on:pcre

Every lesson has you predict what a piece of PHP code will output before you run it, then run it for real in your browser and fix what you got wrong. Each module ends in a challenge gate with hidden tests, so you can't advance until your code actually works. The course closes with a capstone that assembles everything into Logwatch, and a runnable proof page tied to your own code.

Common questions

How long does the Logwatch: Catch the Intruder course take?

about 7 hours, across 6 modules and 28 lessons, at roughly 15 minutes per lesson. Your own course may run shorter or longer, since it's sized to your placement result, not a fixed template.

Do I need experience?

Some. This is an intermediate-tier PHP project, so it assumes you're comfortable with PHP basics and pushes past them.

How much does it cost?

$15 one-time, no subscription. The first module is free, so you can see exactly how the course teaches before you pay for the rest.

No subscription. Module one is free.

Build my Logwatch