Once our application is implemented and running in a test or production environment, we might want, or need, to monitor it.
Several possibilities exist for how we can monitor the database communication of our application.
As we have seen in the Logging section of this chapter, NHibernate can produce a massive amount of logging data if configured accordingly. This data can be very useful to analyze what's going on under the hood. Furthermore, at least one commercial tool (NHibernate Profiler) is using the output generated by NHibernate to monitor and profile the database communication and provide a valuable insight into the usage of NHibernate.
If you are using any commercial version ...