wuping2004 / doc

1 stars 0 forks source link

enable fusion log via powershell #9

Open wuping2004 opened 3 years ago

wuping2004 commented 3 years ago
       greyhamwoohoo/ps-fusionlogger: PowerShell Module for configuring Fuslogvw.exe (Fusion Logger)                                          

Skip to content

Dashboard Pull requests Issues

Marketplace

Explore Settings wuping2004

Sign out

New repository Import repository New gist New organization

This repository

New issue

Sorry, something went wrong.

Learn Git and GitHub without any code!

Using the Hello World guide, you’ll start a branch, write comments, and open a pull request.

Read the guide

greyhamwoohoo / ps-fusionlogger

PowerShell Module for configuring Fuslogvw.exe (Fusion Logger)

Apache-2.0 License

0 stars 0 forks

Unstar

Star

Unwatch Stop ignoring Watch

Notifications

Participating and @mentions

Only receive notifications from this repo when participating or @mentioned.

All Activity

Notified of all notifications on this repo.

Ignore

Never be notified.

Custom

Select events you want to be notified of in addition to participating and @mentions.

Custom

Custom

Select events you want to be notified of in addition to participating and @mentions.

Issues

Pull requests

Releases

Apply Cancel

🔖 Custom notification settings

Looking for a little more control? Now you can choose which types of activity you’d like to be notified about per repository.

Got it

More

master

1 branch 0 tags

Go to file Add file

Code

Clone

HTTPS SSH GitHub CLI

Use Git or checkout with SVN using the web URL.

You don't have any public SSH keys in your GitHub account. You can add a new public key, or try cloning this repository via HTTPS.

Use a password-protected SSH key.

Work fast with our official CLI. Learn more.

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Go back

Launching GitHub Desktop

If nothing happens, download GitHub Desktop and try again.

Go back

Launching Xcode

If nothing happens, download Xcode and try again.

Go back

Launching Visual Studio

If nothing happens, download the GitHub extension for Visual Studio and try again.

Go back

Latest commit

greyhamwoohoo Added PowerShell Gallery Reference

199792f on Feb 15, 2019

Added PowerShell Gallery Reference

199792f

Git stats

Files

Permalink

Failed to load latest commit information.

Type

Name

Latest commit message

Commit time

FusionLogger

Adding Functions To Export

2 years ago

LICENSE

Initial checkin

2 years ago

README.md

Added PowerShell Gallery Reference

2 years ago

atdd-all.ps1

Initial checkin

2 years ago

package.json

Added Tags and Npm commands

2 years ago

View code

README.md

ps-fusionlogger

A PowerShell Module for configuring Assembly Binding Log Viewer (fuslogvw).

PowerShell Gallery

To install the latest version of the module from PowerShell Gallery, run:

Install-Module FusionLogger

Why?

Mostly: to learn the lifecycle of simple PowerShell Module development with Pester and Acceptance Test-Driven Development

Background

The Microsoft Tool 'Fuslogvw.exe' is used for configuring and viewing Fusion logs. The viewer can be used to show all Assembly Bindings and troubleshoot SxS Configuration / Binding Errors. This Module provides a PowerShell wrapper around those registry entries and manual UI Configuration.

NOTE: Fusion Logger (Fuslogvw.exe - if enabled) will impact performance of your system. Be sure to call Disable-FusionLogger after using it. Consider developing / testing this in a virtual machine.

Getting Started

To import the Fusion Logger module:

Import-Module FusionLogger\FusionLogger.psm1

Description Action
To import Fusion-Logger into a PowerShell Session Import-Module .\FusionLogger\FusionLogger.psm1
To disable Fusion Logger Disable-FusionLogger
To collect all Binding Failures to C:\ts\fuslog Enable-FusionLogger -LogPath "C:\ts\fuslog"
To collect ALL bindings (success/failure) to C:\woo\hoo Enable-FusionLogger -LogPath "C:\woo\hoo"-Log"All"
To collect Exception Text to C:\woo\hoo Enable-FusionLogger -LogPath "C:\woo\hoo"-Log"ExceptionText"
To include Immersive Logging Add -LogImmersive to any of the above parameters

Testing and Development

This module makes changes to your registry.

I tend to develop DSC and PowerShell Modules on a virtual machine and use 'nodemon' to watch for changes and execute my tests on every file change.

From this repository root, execute:

npm install nodemon -g
nodemon --watch FusionLogger --exec powershell -File .\atdd-all.ps1

To invoke Pester directly as a one-off:

CD FusionLogger
Invoke-Pester -CodeCoverageOutputFileFormat JaCoCo -CodeCoverage (Get-ChildItem *.ps1 -Recurse).Where{ !$_.Name.Contains(".Tests.") }

References

Description Link
Assembly Binding Logger (fuslogvw.exe) landing page https://docs.microsoft.com/en-us/dotnet/framework/tools/fuslogvw-exe-assembly-binding-log-viewer
PowerShellGuard will watch for file changes and invoke commands (similar to Nodemon). However, I ran into a few difficulties similar to an (unclosed) issue from January 2018 so I reverted to Nodemon. This is quite a bit slower due to the PowerShell instantiation each time https://www.powershellgallery.com/packages/PowerShellGuard

About

PowerShell Module for configuring Fuslogvw.exe (Fusion Logger)

Resources

Readme

License

Apache-2.0 License

Releases

No releases published

Packages 0

No packages published

Languages

You can’t perform that action at this time.

You signed in with another tab or window. Reload to refresh your session. You signed out in another tab or window. Reload to refresh your session.

We use optional third-party analytics cookies to understand how you use GitHub.com so we can build better products. Learn more.

Accept Reject

We use optional third-party analytics cookies to understand how you use GitHub.com so we can build better products.
You can always update your selection by clicking Cookie Preferences at the bottom of the page. For more information, see our Privacy Statement.

Essential cookies

We use essential cookies to perform essential website functions, e.g. they're used to log you in. Learn more

Always active
Analytics cookies

We use analytics cookies to understand how you use our websites so we can make them better, e.g. they're used to gather information about the pages you visit and how many clicks you need to accomplish a task. Learn more

Accept Reject

Save preferences https://github.com/greyhamwoohoo/ps-fusionlogger