MBV – HOW TO Unselect some “mandatory” queries or select only some of them

MBV – HOW TO Unselect some “mandatory” queries or select only some of them

Hello,


 


 


Let me discuss about a new feature that I introduced in version 10.11 that I released recently (http://blogs.technet.com/jpierauc/pages/msgboxviewer.aspx)  :


 


 


MBV 10.11 (in GUI tool) allow you now to unselect some “mandatory” queries and prevent them to execute so, and select only some of them.


 


Maybe this feature can surprise you first if we consider these queries as “mandatory” but I found in fact the need to be able to select sometimes only few important queries to have very quickly result of a report, like the Jobs one, or the MsgBox Integrity one, or the MsgBox or DTA Tables size, or only send ports, etc..


 


if we are now able to disable some mandatory queries, there can not considered anymore as mandatory 😉 so I decided also to rename the  “Mandatory queries” list to “Important Queries” in the interface.


 


Let me explain now how to unselect some important queries (so previously named “Mandatory”) :


 


There is now a global option in MBV named ”Can unselect some important queries” that you have to turn to “True” (it is “False” by default) in the global properties grid.

When you set it to “True” and display the Important Queries List, you will notice then check boxes in this list and also two butons Check All /Uncheck ALL , and you will be able so to select/unselect also these queries.



Notice that by default the behaviour is same than in previous versions: no check boxes are visible in this first Queries list,
so by default this feature is invisible !


 


 


Be careful however :


 


Topology Report and Warnings Report can be impacted if you unselect some specific important queries as some optional queries need for example some information returned by some important queries so you can have some errors or incomplete Topology and Warning reports depending of  which important queries you have unselected.


 


So my recommendation is to use this feature only if you are interested by some specific query reports that you want  to monitor


 


 


 


 


Let me kow your comments/questions on this feature !


 


JP

Hacking the Assembly Manifest

[Source: http://geekswithblogs.net/EltonStoneman]

I was debugging a particularly nasty problem and found myself wanting to edit the manifest of a compiled .NET assembly, to change the version number of the assemblies it was referencing. Not necessarily best practice, but in this case it would enable me to confirm the exact issue without a two-hour build-and-deploy cycle. Turns out that nasty hacks like this are very straightforward:

  1. Run ILDASM, open the assembly and choose FileDump to extract the IL
  2. Open the IL file in Visual Studio and edit the manifest – in this case, the version numbers of the referenced assemblies are easily found at the top of the file:

    // Metadata version: v2.0.50727
    .assembly extern mscorlib
    {
    .publickeytoken = (B7 7A 5C 56 19 34 E0 89 ) // .z\V.4..
    .ver 2:0:0:0
    }
    .assembly extern x.y.z
    {
    .publickeytoken = (E4 21 0D 54 23 66 A2 B4 ) // . .D’f..
    .ver 1:0:9:12
    }

  3. Save the IL and reassemble it with ILASM – if the assembly was signed, re-sign it using ilasm /DLL x.y.z.il /KEY=x.y.z.snk
  4. Ensure the new assembly has the same name as the original, and it will operate as an exact replacement, only now its dependencies will be for the modified versions.

Simon McEnlly’s article on CodeProject describes going further with the manifest to change the visibility of methods, and generally modifying and rebuilding assemblies where you don’t have the source code. Note that if the assembly is signed and you don’t have the strong name key to re-sign it, the modified assembly will warn about being tampered with and won’t load.

MBV – HOW TO run only some specific queries in the Console version of MBV : BTSDBCOLLECT.EXE

MBV – HOW TO run only some specific queries in the Console version of MBV : BTSDBCOLLECT.EXE

Hello,


 



Following a recent  discussion I had with a US colleague about that,  I would like to share with you below the few steps to follow to be able to run only some specific queries in the Console version of MBV – BTSDBCOLLECT.EXE.


 



 


As you maybe already know it :


 


          BtsDbCollect.exe  will execute by default – w/o arguments – all important queries + most of the optional ones


          BtsDbCollect.exe /ALL will execute ALL queries


 


Now, if you want BtsDbCollect to run only a subset of queries, follow these steps :


 


1)      Run the GUI version of MBV – MsgBoxViewer.exe – and select only the queries you want in the interface.
You can even unselect some important queries – previously named “Mandatory“ – :  set the global option “Can Unselect some important queries” to “True” and then unselect the important queries you want via the checkboxes – see my mail below for more details on this new feature.


2)      Close the tool


3)      copy the resulting file “MBVSettings.xml” in the same folder than BtsDbCollect.exe


4)   If needed, change this settings file the 3 properties specifying the correct path for the output files, ex:

<HTMLandXMLFolder>C:\JP\MyProjects\BtsDBCollect</HTMLandXMLFolder>
<
HistoryLogFilePath>C:\JP\MyProjects\BtsDBCollect\MsgBoxViewer_History.log</HistoryLogFilePath>
<
StatusLogFilePath>C:\JP\MyProjects\BtsDBCollect\MsgBoxViewer_Status.log</StatusLogFilePath>


6)      And that’s it !  Each time you will execute BtsDbcollect.exe, it will use this Settings XML  file and so will execute only the queries you chose before


 


 


Let me know if you have any questions


 



JP

Intro to WCF for the AZ.NET User Group

I’m in Arizona currently, specifically Phoenix, and last night I had the chance to speak at the AZ.NET User Group thanks to the wonderful folks at INETA.  I promised the folks there that the slides would be posted last night, so I’m only about 8 hours late.  The talk was an Introduction to Windows Communication Foundation, and the demos focused on showing a simple service being setup from nothing to running.

You can download the slides here, or the final code here.

Handling a Web-Service Null Response: The ’CreateBodyPart’ Pipeline Component

Today I’m releasing a small component that addresses an interesting problem I’ve never come across before – a null response from a web-service.
The web-service in question is provided by a third-party and unfortunately cannot be changed. Their WSDL defines the root response element with a maxOccurs=1 and a minOccurs=0, which allows for a null response […]

Breeze’s MOSS Technology ‘Stimulus Package’ hits Melbourne

If you’re in the Melb area – we’ve got a great offer coming your way

We want to show your technical teams how to get the most out of your existing SharePoint
(WSS or MOSS) implementations.

4 Days – Open to Microsoft Partners and Customers
This is an Official Microsoft Event.

Check out all the details here – https://www.microsoft.com.au/events/register/home.aspx?levent=344938&linvitation

Now is your chance to take advantage of these times and make the technology at your
finger tips work for you!

Me, Pluralsight, Twitter and Facebook

Me, Pluralsight, Twitter and Facebook

I think I might spend more time now communicating with family and friends on social sites than via email. I tend to use Facebook more with my family and local friends, and Twitter more with work colleagues and my virtual friends. 

You can follow me on Twitter here.  And you can find me on Facebook here.

Like most people, at first I didn't "get" Twitter but now it would be hard to go without it. Watch this for a good Twitter explanation in plain English.

If you're new to Facebook, you should watch this video that brings many of its concepts to real life.  😉

A lot of my fellow Pluralsight wonks also hang out on Twitter. You can find all of our individual Twitter/Facebook links on our Technical Staff page.

In addition, Pluralsight has a company profile on Twitter that you can follow here to keep tabs on what's happening around Pluralsight in real-time. You'll be the first to find out about new screencasts, on-demand! modules, new course offerings, and specific projects, articles, and whitepapers that our authors/instructors are actively working on. There's also a Pluralsight Facebook group if you prefer that community instead.