Power, Productivity, and Performance too — Optimize Your SQL Server with sqlSen
Scheduling is the meat and potatoes of sqlSentry. This is where you view, create, modify, and delete schedules among all your SQL Servers and Task Managers.
Offers SQL Agent Job Scheduling, and Optional Windows Task Scheduling
sqlSentry has the ability to monitor not only SQL Server jobs, but also Task Scheduler jobs, assuming you purchase the correct licenses. Currently, sqlSentry job scheduling is licensed per watched SQL Server instance and Task Scheduler is licensed per watched server. If you want to monitor both SQL Server jobs and Task Scheduler tasks on a single server, you will need both licenses.
SQL Agent Jobs Can Be Viewed, Modified, Added, and Deleted from Visual Interface
In fact, there are several different places within the sqlSentry Console that allow you to administer SQL Server jobs. Most of the time you will probably do this from the SQL Server View, but you can also do this from within the Calendar View. You also have the option to perform these same tasks from within the Console, or from within Enterprise Manager or SQL Server Management Studio. With sqlSentry, you are not forced to use sqlSentry once it is installed.
Jobs/Events Can Be Moved by Dragging and Dropping on Visual Schedule
This is one of the most useful features of sqlSentry. When you view jobs or events with the Calendar, you can easily drag and drop them to another time slot. This is especially handy if you find two or more jobs that are conflicting and want to move them to separate time frames in order to prevent resource contention.
Identifies Overlapped Scheduled Jobs/Events
Another very useful feature of sqlSentry, using the Calendar View, you can quickly and easily see what jobs/events overlap others, and then correct them immediately.
Identifies Long Running Jobs/Events
Most jobs/events take about the same amount of time each run. sqlSentry has the ability to identify those jobs that are outside the norm when they run. For example, let’s say a particular job normally takes 10 minutes, but today, it takes 120 minutes. In this case, sqlSentry will let you know about the problem. You can choose the thresholds sqlSentry uses to determine if a job runs long (or short) or not at all. Runtime thresholds can be explicit times, or percentage-based.
Identifies Failed Jobs/Events
Via the Calendar, or alerts, you can quickly learn if a job/event has failed.
Identifies Blocking Jobs
sqlSentry has the ability to identify if a SQL Agent job process is blocking other processes, or is itself being blocked by another process. When blocking occurs, you can determine what happens, such as an alert being sent, or even having the offending process KILLed.
Integrates External Data Event
To a limited degree, sqlSentry has the ability to use scheduled tasks for third-party applications (such as a disk defragger) or third-party applications that write events to the Event Log, and render these in the Calendar View along with SQL Server jobs. This way, you have a better feel for all of the activity that is occurring at any one point in time in order to determine how all of these events together are affecting SQL Server’s performance. The functionality is provided by sqlSentry’s Task Schedule module.
Shared Resource Views Allow You to Identify Scheduling Conflicts
Let’s say that you have a SAN that supports 10 different SQL Servers, and you want to know the impact of backup jobs on the SAN. With traditional SQL Server tools, this is hard to identify. sqlSentry has the ability to create a Shared Resource View that allows you to see all 10 SQL Server backup jobs at the same time, along with related performance information. This way, you can easily tell if your current backup schedule for all 10 servers presents a resource problem on the SAN.
sqlSentry has an extensive ability to monitor the performance of jobs/events. This means that sqlSentry is not only a scheduling and alerting tool, but a performance-tuning tool as well.
Ability to Link any Windows Performance Counter to a Job/Event
SQL Server jobs often use a lot of SQL Server’s physical resources. In order to better help identify any performance issues jobs may have on SQL Server’s regular production work, sqlSentry gives you the ability to link any SQL Server or Windows performance counter directly to any job, task, or report you want. Once a job has run, you can go back and see how the job has affected the performance of SQL Server.
Thresholds Can Be Assigned to Performance Counters to Initiate Automatic Responses
Besides collecting performance information on jobs/events, you can also have sqlSentry send out alerts, or take other actions, if a particular performance threshold is exceeded. For example, if you find that a particular job is taking more than 50% of the CPU utilization, you may want to kill the job so it does not affect production work.
SMTP-Based, Agent-Less Alerting System
As long as you have access to a SMTP server, sqlSentry has the ability to communicate with virtually any e-mail system. There is no need to include an e-mail client on any server.
Alerts Can Be Created for Virtually Any Job/Event
Besides being a job scheduling system, sqlSentry is also a notification system. Alerts of many types (pagers, e-mail, text messaging, etc.,) can be created for SQL Server Agent Alerts, SQL Server Agent Log, DTS Packages, SQL Agent Jobs, Windows Task Scheduler, Reporting Services, SQL Server Maintenance Jobs, and even outside events that are written to the Event Log.
Alert Causes Are Configurable
Alerts can be configured based on many different factors. For example, if a job fails, exceeds a minimum or maximum runtime threshold, exceeds or minimum or maximum performance counter threshold, or many other options, you can choose to have an alert fired.
Alert Responses Are Configurable
When an alert is fired, you can choose from one or more actions to be produced. These include sending an e-mail, sending a page, executing a process, executing Transact-SQL, executing another job, killing a task, logging to disk, logging to a database table, and logging to the Event Log.
Job Queuing and Event Chaining
sqlSentry allows the DBA to create very complex and sophisticated jobs that are not possible any other way. Job Queuing and Event Chaining can be used together as needed.
Job Queue Control
Often, you need to run a job that is very resource intensive. In this case, it is important to be able to schedule it so that it runs without conflicting with other jobs. The problem is that sometimes it is hard to determine if prerequisite jobs have completed or not, and when. This issue goes away with job queuing. Essentially, sqlSentry allows jobs to be queued, one after another, so that they don’t interfere with each other.
Event Chaining allows you to create jobs and tasks that are based on dependencies and workflows that can run on a single server, or even across multiple servers.