hardware tracking

Based on hardware tracking, managed to build full automated

I will add scheme also here soon, but. At first i used powershell script to use gathering on csv files with PC series / model numbers with monitors saving it to .csv files

after that i did same with software list which were installed on PC-s and gathering separated to .csv files

i gathered as master log to keep up to date what's going on with PC-s and made different log with date time stamp to know PC history-s When i had all necessary powershell script ready, i tried to understand what's the most efficient way to produce logs and in what format and how many different CSV files i needed. with first csv files i separated only PC / monitor model with series number to keep it clean, after that i had another script to output all connected devices to computer for example camera, headphones, usb sticks and even what android phones have been connected or iphones. it was enormous upgrade for me because i didnt have to go anymore on physically on place and check what devices are connected. basically i had whole picture on my computer park with 15 minutes with softwares included and what versions which was very cool. If i had logs ready on .csv format, had next thought how i could use all of these data on sorted and readible and even when new guy should come one day on my place, he gets quick overview what's going on etc.

In totally, it was very fun project which i built around 8 months and it all started with how i can keep all the softwares up to date and also how to automate hardware lists.


Medallion Architecture

Medallion Architecture

Very good way to sort data from bronze to golden.

You rean read more about it here.

Data gathering scheme from bronze to golden layer

Data Gathering Scheme

Data flow from initial collection to refined insights.

Based on Medallion Architecture scheme, i used it same way on my project, My workstation at windows were at data gathering non filtered as bronze layer where i had lots of data and on windows machine i started sorting data what i needed mostly for example monitor / pc models with series numbers because these data are number 1 priority. All other data were filtered out and left only important data what i needed. When PC / monitor models and series were sorted, i had also all the information i got from Device manager with powershell and i had around 230 lines of information per computer so totally i had list of all devices which were connected to computer and the size of it was around 1.8MB or around 32k lines of information. It was alot so i sorted these one also.

When i got basic information sorted on first layer i went to second stage and moved data to Ubuntu where i started to filter even more specific for purpose of database table. Usually when you have focus filtered data it's easier to reuse them on website and integrate them through php and keep KISS principle.

Scheme picture 1.0

House Scheme

Visual breakdown of hardware tracking across departments.

On Scheme picture 1.0 Main focus here was to rule out good mysql database rules and combine it with php and in order to display data mouse over had to use little bit of javascript. This was one of hardest tricks i've ever pulled, struggled maybe with 3 days only debugging on this and had some logical error because of javascript and php combined and make sure icon stays fixed.

I usually follow K.I.S.S method (Keep it simple stupid) but i rather rename it Keep it simple structure, seems more logical on programming world. The K.I.S.S method was born at US Navy


Overview 1.0

Filtered Data

Filtered dataset showing monitor and PC model correlations.In that view it's possible to check all computers organizations has and detect who uses it. Had to paint little bit because of sensitive information

With this php file was easy to pull up data from database and used similarly with Scheme picture 1.0 K.I.S.S method, built separate table for this and was easy to pull up data through


Searchable CSV logs

CSV Search

Searchable CSV logs for historical PC configurations.

When you have massive amounts of devices and monitors / PC-s and some computer goes missing, it's easier to keep a log and see who used this computer.