Is It SQL has an Admin GUI

It's finally time to push Is It SQL 1.0.25 out the door. I sent it to the newsletter subscribers last week and we haven't discovered any problems yet.

Before upgrading, please read the README in the zip file! Especially if you have custom connection strings and this is running as a service. I rewrote it just for this release. And there are some security and encryption implications in this release that you need to understand.

The first big change is that we now have a simple GUI for servers and settings. You can access this via the little gears icon in the header menu.

This replaces the servers.txt file. You can add, edit and delete servers through this.

If you're upgrading, it will import your servers.txt and rename it as servers_imported_YYYYMMDD.txt or something like that. I'd also encourage you to delete this file -- especially if it has custom connection strings with passwords.

All the server connections are stored in connections.json in the config directory. Any password or custom connection string is encrypted in the file. It's encrypted using the Windows DPAPI based on the account that is running the application. This makes changing the service account or machine hosting this tricky so I encourage you to get that right.

New Server URLs

Previously every server was assigned a URL in the format http://localhost:8143/server/S1. And the number part was assigned based on the order of the server in servers.txt. Putting the servers in a JSON configuration file and controlling the edit process means I can finally have consistent URLs. And of course they're GUIDs!

So the URL for a server is now something like this:

http://localhost:8143/server/f8e451b9-d2a2-472a-be8a-7ec90df23347

And that GUID won't change. That should make it easier to bookmark servers.

Settings

There are a few basic settings you can control. These include:

  • The port the service uses to serve the web site. I'd love to use port 80 but IIS usually takes that. This lets you run on any port you want.

  • The number of servers that will be polled concurrently. This defaults to 4 times the number of cores but will always be at least 8. That's been a reasonable default up to a hundred servers or so.

  • Backup alert thresholds. Signing up for the newsletter gets you access to some of the advanced features. One of those is alerts on missing backups. You can now set the site-wide threshold for missing backups. It defaults to 36 hours for full or differential backups and 90 minutes for transaction log backups.

  • Admin page security. There's a setting that controls security on these settings and on editing servers. Right now the two options are anyone who can reach the web site can change this or limiting it to people that are running on the console of the server itself. These were simple to implement and seemed like a reasonable compromise. I've been testing Activity Directory authentication but that's a pretty big leap.

Every setting except the port takes effect immediately.

Other Changes

There are lots of smaller changes in this release.

  • If you've subscribed to the newsletter, you can monitor Availability Groups. This release shows failures for both the server and the AG if there are issues. Previously it would show the server as failed and would not update the AG.

  • We now have a favicon. And of course it's a bright orange question mark.

  • The application handles backups for servers in time zones east of you. SQL Server reports backup times in the local time zone so it was seeing future backups and not reporting missing transaction log backups properly. This now handles those correctly.

  • The menu is simplified. Anything that reports across servers now falls under a "Global" menu. This includes Availability Groups, Backup Issues, Database Mirroring Status, and the Summary Page.

Give it a try and let me know what you think. My email is in the README or you can use the scaleSQL contact page to reach me. I also added an Is It SQL support forum to the SQLTeam Forums if you'd like to chat there.