Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

History of changes between reports #27

Open
IntolerablePices opened this issue Oct 28, 2021 · 2 comments
Open

History of changes between reports #27

IntolerablePices opened this issue Oct 28, 2021 · 2 comments
Labels
enhancement New feature or request

Comments

@IntolerablePices
Copy link

Not an issue and I really love the work you've done, it's an amazing reporting utility and really impressive work.

I'm not sure how feasible this idea really is. Basically, I'd like to run the report daily and have it compared against the previous days report. If there are no changes then simply keep the previous days report. If there have been changes then save the new one with the current date and highlight changes. This keeps both copies for historical comparison.

First off I just wanted to compare the HTML files but I realised each one has certain unique aspects anyway. The time it was generated for example. My next thought is to find a way to filter through the HTML just to the table with the data I want in it but I can't seem to get to the table.

Cheers for any thoughts or ideas you can throw my way.

@PrzemyslawKlys
Copy link
Member

PrzemyslawKlys commented Oct 28, 2021

I know what you mean. So far I've built myself a dashboard with current reports being always available from the top menu, and earlier reports being available in the calendar.

image

It's not exactly what you want tho - but good enough for me to have historical things. GPOZaurr provides -PassThru parameter which returns what you see in a GUI into PowerShell object.

image

That's how I decide on automated tickets being sent to IT if things go wrong. All GPOZaurr reports I have automated and scheduled to AD Team if things aren't as supposed. Each report has ActionRequired property

image

This property is TRUE if AD Team should take action. It also exposes all variables

image

And it also has the full data under the Data property. You can also use HTML that's part of the report from the PassThru and push it to email and based on action required send an email or send a ticket.

image

But your idea is something that goes thru my head and something I would need for my dashboard to have over time charts. So sooner or later I'll probably add something - unless someone is going to do the job for me ;)

Generally speaking, comparing 2 tables is not that easy. I wrote a blog post on this https://evotec.xyz/comparing-two-or-more-objects-visually-in-powershell-cross-platform/ but then you need a lot more work. Maybe what I propose is enough for you for now?

It would probably be easier to compare Variables (so number of empty, unlinked gpos) than to compare the whole Dataset.

@IntolerablePices
Copy link
Author

You've given me an idea. The -passthru parameter flew completely over my head. I read through your blog post and comparing the two tables isn't easy at all. I don't think it's impossible but it's going to take a fair while before it's feasible.

Comparing variables though made me think of storing the psobject as a file. You can you Export-Clixml to save the object created using Invoke-GPOZaurr as a file.

This way you can then use Import-Clixml to re-import the object whenever you like, then it's just a process of comparing the previous day's object and today's one.

Which you could use what you showed in your blog post to get a graphical way of looking at it.

@PrzemyslawKlys PrzemyslawKlys added the enhancement New feature or request label Oct 29, 2021
@PrzemyslawKlys PrzemyslawKlys changed the title Automating Report Updates History of changes between reports Oct 29, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants