Opserver Documentation Go to the repo

Opserver Monitoring Dashboard

Opserver is a monitoring system by the team at Stack Exchange, home of Stack Overflow. It independently monitors several systems as well as supports pulling data for an “all servers” view with respect to CPU, Memory, Network, and hardware stats. Currently, Opserver can monitor:

It can run under:

Building Opserver (.NET App)

To build, you’ll need the .NET Core 3.1 or higher SDK (available here), or a current version of Visual Studio.

Build instructions are:

  1. Clone the repo.
  2. dotnet build

Building Opserver (Docker)

This also requires the .NET Core 3.1 or higher SDK (available here), or a current version of Visual Studio.

Build instructions are:

  1. Clone the repo.
  2. docker build --target web .

The goal is to also update Docker Hub from GitHub actions so that you can spin up and image and simply provide your config.

Running Opsever

You may build to a directory under IIS with the ASP.NET Core hosting module if wanting to host in the V1 model, or you can use it as a raw executable (using “Kestrel”, the ASP.NET Core web server).

For example, if you just want to clone this repo and run it from the command line:

dotnet run --project src/Opserver.Web

Full instructions on building and running can be found here.

Note: you’ll need to setup your configuration to do anything useful.

Open Source Projects in Use

JavaScript:

License

Opserver is licensed under the MIT License.

Props

We’d like to thank several people outside Stack Exchange for large contributions to Opserver’s development.

  • Brent Ozar for lots of (continuing) help on the SQL monitoring, with some of the initial queries and help letting us know many use cases to cover. We’ll be integrating some of the awesome tooling Brent and his team have to further assist DBAs and developers (like sp_Blitz, sp_BlitzIndex, and some you’ll hear about soon).
  • Adam Machanic for sp_WhoIsActive, which powers the active tab for a SQL Instance. He also assisted with use cases and performance tuning on the use of sp_WhoIsActive.