Quantcast
Viewing all articles
Browse latest Browse all 13977

You Too Can Snoop… But Not In A Creepy Way

Today’s guest blogger is Stephen Habegger, a Senior Developer at Sonoma Partners.

Awhile back, we showcased an application called CRM Snoop on our website. Snoop is a tool that allows developers to listen to Dynamics CRM plugin messages and peer into the darkest depths of an IPluginExecutionContext object. It’s a tool that can be extremely useful for plugin debugging and development and was only available for use internally at Sonoma Partners… until now.

We’ve recently revamped the application completely, moving away from its former incarnation as a WPF application and creating a new managed solution that can be installed in both on-premise and online Dynamics CRM 2015 environments. And now we’re making the solution publicly available here.

What’s In the Solution?

The Snoop solution will create two new entities in your Dynamics CRM organization, Snoop Session and Snoop Session Results. A Snoop Session represents a configuration for snooping on plugin messages (i.e. what entities and what messages you want to listen to). When you start recording a set of messages, a plugin is registered on those messages, and they are saved as Snoop Session Results records.

How Do I Use It?

After installing the CRMSnoop managed solution, navigate to Settings > Solutions. Click the new Snoop Sessions button in the command bar.

Image may be NSFW.
Clik here to view.
image

A new window will launch with a list of Snoop Session records. Open one or create a new one. When the form has loaded, select the entities and messages you wish to record. Optionally, select Include Available Images to register Pre and Post Entity Images where applicable. You can also select Only Record My Actions to ensure actions performed by other users don’t show up in your results. Then, just click Start Recording.

Image may be NSFW.
Clik here to view.
image

After you begin recording, the Results section of the Snoop Session form will display an animated timeline of messages as they happen. You can click on the message icons in the timeline or in the table below to display the detailed properties of the IPluginExecutionContext passed to the plugin message. When you are finished recording, click the Pause Recording button.

Image may be NSFW.
Clik here to view.
image

Image may be NSFW.
Clik here to view.
image

You can also navigate to the list of related Snoop Session Results in the header of the Snoop Session form. The form for an individual Snoop Session Results record also displays the results for that particular message.

Image may be NSFW.
Clik here to view.
image

It is important to note that the recording process relies on the Snoop Session record status. That means recording does not end automatically when the Snoop Session form is closed. The recording must be stopped by clicking the Pause Recording button. The recording may be resumed at any time with the same or altered configuration. In some scenarios it may make sense to let a recording continue over a period of time. However, we do not recommend this in a production environment as there may be a performance impact.

What Is It Good For?

Snoop is an excellent tool for developing and debugging plugins in a variety of scenarios. It allows the developer to see the input a plugin may receive without profiling or attaching a debugger. Use it to check out what fields are changing during an Update operation. Keep a link handy to a specific Snoop Session Results record for when you don’t remember what’s in that pesky Opportunity Won message. Record in a User Acceptance Testing environment to collect a log and figure out what those crazy users are doing to break your plugin.

Will you find another use for Snoop? Let us know what your favorite features are and how you use it.

Enjoy!

Image may be NSFW.
Clik here to view.

Viewing all articles
Browse latest Browse all 13977

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>