Dashboard to monitor FTP downloads of orders from customers

So I got tasked at work to automate the process of pulling files from an FTP site, removing the files once downloaded, then moving them to a specific folder on the network, so that they can be automatically imported into the database. I accomplished this using scheduled tasks for powershell to run at set time intervals. But how do you know everything is working? Simples design a beautiful dashboard


So this shows me the previous week of log files along the top and their file sizes (yes we had an issue on the 25/11/2018) shows how many orders have been imported into the network folder (hoping this will get me a bonus) shows how many orders have been done today, and the current size of the log file. It also shows me in real time when files come in to be processed. I also monitor the status of the service which is running on a separate server. This allows me to glance at this dashboard and see if there has been any issues downloading and importing.

6 Likes

Fantastic work. Care to share any code? :slight_smile:

Thanks glad you liked thisā€¦this dashboard is linked to powershell jobs that are downloading the files from the remote FTP site, then I am just showing the statistics. Is there a particular bit of the dashboard you wanted to see the code for? Always happy to help

Is the data just reading information from files/folders or are you persisting data some other way?

Yeah the data is just reading file/folders so each of the top cards are made up of the following code:-

$date6 = (Get-Date).AddDays(-6).ToString(ā€˜yyyy-MM-ddā€™)
log6 = Write-Host "Log File ((get-date).AddDays(-6).ToShortDateString())"
$l6name = ā€œUnattendedImport.$date6.logā€
$path6 = ā€œ\YOUR-SERVER\logs$l6nameā€
if (Test-Path $path6) {$f6 = gci ā€œpath6" | Select Name,@{Name="Kilobytes";Expression={[math]::round(_.Length/1kb)}} }
else {$f6 = ā€œNot Foundā€}
if (f6 -match "Not Found") {New-UDParagraph -Text "(f6)" -Color "#8b2635"} else {New-UDParagraph -Text "($f6.Kilobytes)KBā€ -Color ā€œGreenā€}

Similar stuff is done to build up the stats of the cards/countersā€¦the monitor shows real-time on FTP files being imported into the system itā€™s served my well this dashboard now up to 17,020 processed orders

1 Like