Updated 3 December 2019
If you have setup your logon monitor this is great. But its lacking a ton. How do you look at this as a holistic basis? How do you start to look at trends? Well there is noting out of the box for you. You pretty much have to build the solution on your own. Well you are in luck. I had some time on a flight to Dallas to kind of throw something together pretty quick.
What I built was a tool that will query the remote Logon Monitor folder, look through each of the log files and collect the following:
- Logon Date
- Logon Time Stamp
- Session Users
- Session FQDN
- Logon Total Time
- Logon Start Hive
- Logon Class Hive
- Profile Sync Time
- Windows Folder Redirection
- Shell Load Time
- Total Logon Script
- User Policy Apply Time
- Machine Policy Apply Time
- Group Policy Software Install Time
- Free Disk Space Avail
I would pull this from the each of the log files and put in a table view and export to a CSV. Yes this is noting to fancy, but from here you an publish the results to a SQL database instead, create a Web front end to show fancy graphs and if you are lucky you can put it behind Microsoft’s Power BI.
To use this you need to follow my previous post and setup Horizon Log on and configure the Remote Logon Monitor path.
Once you get this setup, you can set this script to run as a scheduled task to collect log data. This script is more setup as a framework and will continue to kind add to it as I have the time.
You can access the script here. Or can just be found on my GitHub site.
If you download this and fill in the remote log path and where and what you want to name the CSV. When you run the script you will get a CSV like below.
I have completed some major updates to this script. I have added the ability to turn on and off features. Also added the ability to clean up old log files so you are not filling up drives.
I have incorporated an email function that will attach the days CSV file with the performance stats, and it will also include a bar graph with the average logon times of the last 14 days organized by day. The chart will look like below. It will highlight the lowest time the color Green and the highest one the color Red. The email will also have a breakdown of the Averages for the day.
Also added the SQL functions so you can export the data to a SQL Data Base. As you run the script it will export the data to a SQL table. In a SQL server you have already stood up. Inside the Git Repo is the SQL script to create the Table, and also the script to run for De-Duplication of the data, you should not run into duplicate records but for me and testing I ran into a ton.
Now from here the possibilities are pretty limitless. You can build a PowerBI site, you could build your own Webpage graphing the stats, or many other options.