PowerShell Genie

🛠️ Admin Project 1 · Beginner · ~30 minutes

Service Health Audit

📋 Project brief

Requested by
Your manager (email, Monday 9:04 AM)
Deadline
Friday — service health report for all servers
Summary
Leadership wants to know which services are not running across the fleet, starting with SRV01. Build the audit with PowerShell: gather the services, filter to the unhealthy ones, shape the report columns, and export it as CSV.
Deliverables
A working .ps1 script, the CSV report, and a validation summary of what was checked.

Simulated environment — fictional server (SRV01), fictional data. Artifacts generated by simulation; they do not represent changes to a real server.

Step 1

Gather services

Get every service on SRV01 and store the result in a variable. You'll build on this variable in every later step.

To pass: a variable holding all 7 service objects (with Name, Status, StartType, DisplayName).

PS>

Step 2

Filter the unhealthy ones

From your gathered services, keep only the ones that are not Running. Store the filtered result in a new variable.

To pass: a variable holding exactly the non-Running services — no more, no fewer.

PS>

Step 3

Shape the report

Your manager only wants three columns: Name, Status, StartType. Project just those properties into a new variable.

To pass: a variable whose objects have exactly those 3 properties — nothing extra.

PS>

Step 4

Export the CSV

Convert your shaped report into CSV text (no type header) and store it in a variable. This becomes the downloadable report.

To pass: a variable holding valid CSV text with the header "Name","Status","StartType".

PS>

Genie guideService Health Audit

Simulated environment — fictional server (SRV01), fictional data. Artifacts generated by simulation; they do not represent changes to a real server.