Chapter 27. Monitoring Database Activity

Table of Contents

27.1. Standard Unix Tools
27.2. The Statistics Collector
27.2.1. Statistics Collection Configuration
27.2.2. Viewing Statistics
27.2.3. Statistics Functions
27.3. Viewing Locks
27.4. Progress Reporting
27.4.1. CREATE INDEX Progress Reporting
27.4.2. VACUUM Progress Reporting
27.4.3. CLUSTER Progress Reporting
27.5. Dynamic Tracing
27.5.1. Compiling for Dynamic Tracing
27.5.2. Built-in Probes
27.5.3. Using Probes
27.5.4. Defining New Probes

A database administrator frequently wonders, What is the system doing right now? This chapter discusses how to find that out.

Several tools are available for monitoring database activity and analyzing performance. Most of this chapter is devoted to describing PostgreSQL's statistics collector, but one should not neglect regular Unix monitoring programs such as ps, top, iostat, and vmstat. Also, once one has identified a poorly-performing query, further investigation might be needed using PostgreSQL's EXPLAIN command. Section 14.1 discusses EXPLAIN and other methods for understanding the behavior of an individual query.