Giter Club home page Giter Club logo

diagnostics-tools's Introduction

My diagnostics tools

It is a repository of small tools which might help you diagnose .NET and Windows applications. Some tools are still available on the old Codeplex page. Each project contains a _binaries folder with compiled version of the tool.

Following tools have been published:

It's a simple, but powerful, SQL Server monitor. Shows you all running requests, active transactions as well as transaction log usage. It also embeds some interesting SQL Server performance reports and, thanks to the Justin Pealing's query plan drawer, draws nice query plans for the currently running queries. More information can be found in a post on my blog: https://lowleveldesign.wordpress.com/2013/09/26/bazik-sql-server-monitoring-application. Some improvements were made since then.

Download the binary release, change the connection string in the web.config and observe the data for your database.

A tool to debug a start of a Windows service, described in the blog post: https://lowleveldesign.wordpress.com/2015/06/22/how-to-debug-windows-services-written-in-net-part-ii/

A tool to collect logs from a failing Windows service, described in the blog post: https://lowleveldesign.wordpress.com/2014/11/30/how-to-debug-windows-services-written-in-net-part-i/

Three tools that will help you move MSMQ messages between computers: MessageDumper, MessagePeeker and MessagePusher. More information can be found on my blog: http://lowleveldesign.wordpress.com/2014/04/06/msmq-helper-tools/.

This application allows you to set a limit on a memory committed by a process. On Windows committed memory is actually all private memory that the process uses. I wrote this tool to test my .NET applications (including web applications) for memory leaks. With it I can check if under heavy load they won't throw OutOfMemoryException. For more information visit my blog: http://lowleveldesign.wordpress.com/2013/11/21/set-process-memory-limit-with-process-governor.

AdoNetTraceReader is a parser for etw events stored in a xml file. In an installation package you can also find .reg files needed to enable ADO.NET tracing in a registry and a providers file for the logman tracing. For a complete example how to diagnose ADO.NET problems you may read my blog post. Just to catch up those are steps required to collect and parse ADO.NET traces:

  1. setup (run only once): setup-ado.net4x64.reg or setup-ado.net4x86.reg, mofcomp adonet in the framework directory (c:\Windows\Microsoft.NET\Framework64\v4.0.30319)
  2. start trace collection: logman start adonettrace -pf .\ctrl.guid.adonet -o adonettrace.etl -ets
  3. stop trace collection after performing some data tasks: logman stop adonettrace -ets
  4. convert etl file to xml: tracerpt -of xml .\adonettrace.etl
  5. parse and filter (if necessary) the xml file: .\AdoNetTraceReader.exe -i dumpfile.xml -o parsed.txt -p 2008
  6. read logs and diagnose:)

It's a simple application that can be used to diagnose other processes start-up - it logs the process command line and copies all files which paths are found in call arguments. If installed it can intercept a given process globally, logging each of its call. More on this tool as well as an example usage to diagnose ASP.NET compilation can be found on my blog: http://lowleveldesign.wordpress.com/2013/01/25/diagnosing-aspnet-views-compilation. Usage:

frontman <app-to-start> [args]
frontman -install <app-image-name>
frontman -uninstall <app-image-name>

It's a small web application that can show Elmah logs from different applications. It's a sample I described on my blog: http://lowleveldesign.wordpress.com/2013/03/24/elmah-axd-log-viewer-for-multiple-apps/. To access the exception list open the /elmah.axd?app=<your-app-name>.

Note: the sample viewer uses a MySql database. In order to connect it to a different error log store you will need to make some modifications in code. Please use the Discussions tab if you have any problems or questions.

diagnostics-tools's People

Contributors

lowleveldesign avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.