Skip to content

ef-labs/nanoprofiler

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

52 Commits
 
 
 
 
 
 
 
 

Repository files navigation

NanoProfiler

NanoProfiler is a light weight profiling library written in C# which requires .NET 4.0+. It was inspired by the MiniProfiler project, but is designed for high performance, big-data analytics, and is easy to be used for both sync & async programming model. It has been used in EF (Education First) projects generating billions of profiling events per day with trivial performance penalty.

NanoProfiler itself implements the core profiling feature and a simple implementation for persisting results via slf4net. If you want better profiling result management feature, you could implement the IProfilingStorage interface by yourself.

NanoProfiler also provides a wonderful view-result Web UI supports view latest profiling results in a tree-timeline view (simply visit ~/nanoprofiler/view in your web application).

For more documentations, please check out wiki pages.

How to compile the source code?

Do the following steps before opening NanoProfiler2.sln in Visual Studio 2015 +

  • git clone
  • cd src

Build and test:

msbuild -t:clean,rebuild,test -restore

Build, test, and package:

version=2.2.0
assembly_version=2.2.0
path=${PWD}/nuget
msbuild -t:clean,rebuild,test,pack -restore -p:Configuration=Release,Version=${version},AssemblyVersion=${assembly_version},PackageOutputPath=${path}

License terms

NanoProfiler is released under the MIT license.

About v2.0

Changes since latest version of v1:

  • Profiling engine redesign for better performance & less memory concumption;
  • Enhanced View-Results UI to display all custom profiling tags & fields;
  • Drill down/up to child/parent profiling sessions in View-Results UI;
  • Simplified profiling configuration (zero configuration for simple use cases);
  • New configuration provider interface for easier integration with existing frameworks;
  • New NanoProfiler.Web.Import components for importing and visualizing profiling sessions from log files or elasticsearch;
  • New generic custom web request timing support;
  • Entity Framework 6 Profiling experimental support (since v2.0.7);

About

NanoProfiler - a light weight .NET profiling library

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Contributors 3

  •  
  •  
  •