Upload
lythien
View
217
Download
0
Embed Size (px)
Citation preview
1 CoverPage
USER GUIDE
SentryOne User Guide | 1
2 TableofContents
1. CoverPage 1
2. TableofContents 2-5
3. Welcome 6
4. InstallationandMaintenance 7
5. SecurityOverview 8
5.1. RightsBasedSecurity 8-11
5.2. RoleBasedSecurity 11-13
6. SentryOneClient 14
6.1. ClientInterface 15-16
6.1.1. NavigatorPane 16-18
6.1.2. EventViewPane 18-19
6.1.3. ConditionsPane 19-21
6.1.4. SettingsPane 21-25
6.1.5. ClientAlerts 25-26
6.1.6. Menus 26-29
6.1.7. UserPreferences 29-33
6.1.8. LicenseManagement 33-35
6.2. NavigatorNodes 35
6.2.1. FavoriteTargets 35-36
6.2.2. Virtualization 36
6.2.3. AllTargets 36-38
6.2.3.1. DefaultSite 38-39
6.2.3.2. Targets 39-41
6.2.3.3. Instances 41-42
6.2.4. SQLServerRegistrations 42
6.2.5. ContactManagement 42-45
6.2.6. SchedulesandWindows 45-48
6.2.7. ObjectGroups 48-51
6.2.8. MonitoringService 51
6.2.8.1. MonitoringServiceSettings 51-55
6.2.8.1.1. SMTPConfiguration 55-58
6.2.8.2. SiteConfiguration 58-60
6.2.8.3. InventoryView 60-61
6.2.8.4. MonitoringServiceLoadBalancingandFaultTolerance 61
6.2.8.5. ActionsLog 61-63
6.2.8.6. SystemStatus 63
SentryOne User Guide | 2
6.2.8.7. ServiceConfigurationUtility 63-64
6.2.8.8. MonitoringServiceLogonAccount 64
6.3. CommonTasks 64
6.3.1. Reporting 64-71
6.3.2. AddingNotes 71-73
6.3.3. MonitorAdditionalInstances 73-75
6.3.4. ConnecttoInstallation 75-76
7. AlertingandResponseSystem 77-78
7.1. Conditions 78-80
7.1.1. ConditionSettings 80-84
7.1.1.1. FilterEditor 84-85
7.1.2. GeneralConditions 85-92
7.1.3. FailsafeConditions 92-94
7.1.4. AuditConditions 94-96
7.1.5. AdvisoryConditions 96-102
7.2. Actions 103-109
7.2.1. ActionBehaviors 109-111
7.2.2. MessageEditing 111-117
7.3. Settings 117-120
7.3.1. SQLServerSettings 120-126
7.3.2. SSASSettings 126-127
7.3.3. WindowsSettings 127-129
7.4. ResponseRulesets 129-132
7.4.1. ResponseRulesetExamples 132-136
7.5. OutputContentMatch 136-137
8. SentryOneEventManager 138
8.1. HistoryFilter 138-139
8.1.1. FilterEditor 139-140
8.2. CalendarView 140-144
8.3. ListView 144-145
8.4. CustomEventViews 145
8.4.1. WorkingWithCustomEventViews 145-148
8.4.2. FilteringProcess 148
8.4.3. FilterProcessFlowchart 148-149
8.4.4. LevelingBackupsAcrossaSANorNAS 149-151
8.5. ChainingandQueuing 151
8.5.1. EventChains 151-160
SentryOne User Guide | 3
8.5.2. JobQueuing 160-163
8.6. ClearingFailedInstances 163-164
8.7. CopyJob/AlertWizard 164
8.8. ConflictViewer 164-165
8.9. EventObjectInformationWindow 165-166
8.10. Multi-serverAdministration(MSX/TSX) 166-167
8.11. RuntimeStats 167-168
8.12. Toolbars 168-170
8.13. ExtendedJobStepLogging/SSISLogging 170
8.13.1. ExtendedJobStepLogging(SQLServer2005+) 171
8.13.2. EnablingSSISLogging 171-172
9. SentryOnePerformanceAnalysis 173-177
9.1. Dashboard 177-181
9.1.1. DashboardResolutions/Retention 181-182
9.1.2. Baselining 183-187
9.1.3. PerformanceMetrics 187-194
9.2. Processes 194-196
9.3. DiskActivity 196-200
9.4. DiskSpace 200-203
9.5. TopSQL 204-208
9.5.1. PlanExplorer(integrated) 208-211
9.5.1.1. PlanExplorerSessions 211-212
9.5.1.2. SQLPerformance.comPlanUpload 212-214
9.5.1.3. PlanDiagramOptions 214
9.5.1.4. IndexAnalysis 214-216
9.5.2. TopSQLRuntimeStats 216-217
9.6. AlwaysOn 217-224
9.7. QueryPlans 224-225
9.8. Indexestab 225-229
9.8.1. FragmentationManager 229-232
9.9. SSASUsageTotals 233
9.10. BlockingSQL 233-236
9.11. Deadlocks 236-240
9.12. QuickTraces 240-243
9.13. PerformanceAnalysisOverview 243-245
9.14. PerformanceAnalysisToolbar 245-246
9.15. DataGrids 246-247
SentryOne User Guide | 4
9.16. VirtualMachineSupport 247
9.17. cloud.sentryone.com 247-249
9.17.1. ServerDetails 249-250
9.17.2. ServerHealthStatus 250-252
10. ImportantConcepts 253
10.1. EventConnectorArchitecture 253-254
10.2. ExecutionAgents 254-255
10.3. ExecutionEngines 255-256
10.4. EventStores 256
10.5. EventStoreConnections 256-257
10.6. EventProviders 257
10.7. EventSources 257-258
10.7.1. SQLServerAgentJobs 258
10.7.2. SQLServerAgentAlerts 258-259
10.7.3. ReportingServicesReports 259-260
10.7.4. SQLServerAgentLog 260
10.7.5. WindowsTasks 260-261
10.7.6. WindowsEventLogs 261
10.8. EventObjects 261-262
10.8.1. ActiveEventObjects 262
10.8.2. StatusEvents 262-263
10.8.3. HybridEventObjects 263
10.8.4. EventInstances 263-264
11. Appendix 265
11.1. sp_sentry_mail_20 265-268
11.2. sp_sentry_dbmail_20 268-272
11.3. WatchedServerObjects 272-273
11.4. ExecuteActionParameters 273-275
11.5. SentryOneDatabaseMaintenance 275-276
11.6. RelocatingtheSentryOneDatabase 276-277
11.7. WatchingServersAcrossDomains 277
11.8. HotKeyList 277-279
11.9. SentryOnePowerShellModule 279-282
12. ContactInformation 283
13. Index 284-291
SentryOne User Guide | 5
3 Welcome
ThankyouforinstallingSentryOne.Togetupandrunninginnotime,pleasereviewtheSentryOneQuickStartGuide.
Ifyouhaveanytechnicalquestions,orforhelpwithinstallationorconfigurationissues,pleasedon’thesitatetocontactus:
Email:[email protected]
Phone:704-895-6241
TollFree:855-775-7733
SupportForum:http://support.sentryone.com
SentryOne User Guide | 6
4 InstallationandMaintenance
INSTALLATIONPleaserefertotheSentryOneQuickStartGuidefordetailedinstructionsoninstallationandsetupoftheSentryOneClientandtheSentryOneMonitoringService.
MAINTENANCEJustaswithanyotherSQLServerdatabase,itisimportantthatregularmaintenanceactivitiesbeperformedontheSentryOnedatabasetoensureoptimalperformance.PleaseseetheSentryOneDatabaseMaintenancetopicformoredetailsandrecommendations.
SentryOne User Guide | 7
5 SecurityOverview
TheQuickStartGuidecoversthefollowingtopicsrelatedtoSentryOneSecurity,includingrequiredpermissionsforthevariousSentryOnecomponents.
SecurityTopic Description
MonitoringServiceSecurity ThistopicdiscussesthepermissionsrequiredbytheSentryOneMonitoringServiceaccountwhenwatching(monitoring)Instances.
ClientSecurityThistopicdiscussesthepermissionsrequiredwhenrunningtheSentryOneClient,includingscenariosinwhichtheClientconnectsdirectlytoamonitoredserver.
WatchingServersAcrossDomains
Thistopicisabriefoverviewoftheoptionsavailableforwatching(monitoring)serversacrossdomains,includinginformationaboutpass-throughauthenticationandconfiguringSentryOneSiteswithinyourenvironment.
Non-WindowsEnvironment Thistopicdiscussestheoptionsforwatching(monitoring)Instancesinanon-Windowsenvironment,includingpass-throughauthentication.
SentryOnePerformanceAnalysis
SeethissectionforadvancedinformationabouttheSentryOneSecurityRequirements,includingPortRequirementsformonitoredservers.
AzureSQLDatabaseandSQLDataWarehouse
ThistopiccoverssecurityaspectsspecifictoAzureSQLDatabaseandSQLDataWarehouse.
TheUserGuidecoversthefollowingtopicsrelatedtorestrictinguseraccesswithinSentryOne.
SecurityTopic Description
RightsBasedSecurity ThistopicdiscussesrestrictinguseraccesswithintheSentryOneClientbasedonWindowsandSQLServerAuthenticationaccounts.
RoleBasedSecurity ThistopicdiscussesrestrictinguseraccesswithintheSentryOneClientbasedonSentryOneDatabaseroles.
5.1 RightsBasedSecurity
SentryOnesupportsrestrictingservervisibilitywithintheSentryOneClientthroughtheapplicationofRightsBasedSecurity.BothusersandgroupscanbeassignedalimitedsetofvisibleSites,TargetGroups,orInstanceseffectivelyrestrictingwhatthelogged-inusercansee.Certainobjectsandcommandsarealsodisabledforrestrictedusers,seeObjectsHiddenfromRestricted
SentryOne User Guide | 8
Usersformoreinformation.ConfiguringRightsBasedSecurityintheSentryOneClientisatwostepprocess.
1. First,aSentryOneuserisassociatedwitheitheraWindowsorSQLServerAuthenticationaccount.
2. Next,aSentryOneuserorgroupofusersisassignedrightswhichwillrestrictservervisibilitywithintheSentryOneClient.
YoumayalsoassociateaWindowsActiveDirectorysecuritygroupwithaSentryOnegroup.ThisallowsyoutoeasilymanageSentryOneClientSecurityforalargenumberofusers.TheActiveDirectorygroupcanbespecifiedfromthegrouppropertiestabintheLoginfield.
1.ASSOCIATEAUSERWITHANACCOUNTThefirststepinconfiguringRightsBasedSecurityistoassociateaSentryOneuserwitheitheraWindowsaccountoraSQLServerAuthenticationaccount.ThisaccountshouldbethesameaccountthattheuseruseswhenopeningtheSentryOneClient(seealso:ConnecttoInstallation).Followthestepsbelowtoassociateauserwithanaccount:
1. IntheNavigatorpane,expandtheContactsnodeandthentheUsersnode.2. Double-clicktheuseryouwishtoassignanaccountto,orselectOpenfromthecontextmenu.Ifnouserexistsyoucandouble-clickontheUsersnodetocreateanewuser.
3. Onthepropertiestab,theLoginfieldisusedtospecifywhichaccountwillbeassignedrightswithintheSentryOneClient.
IftheuserconnectstotheSentryOneInstallationusingIntegratedWindowsAuthentication,entertheirusernameintheLoginfieldasDomain\Username.IftheuserconnectstotheSentryOneInstallationusingSQLServerAuthentication,simplyentertheirSQLServerLoginname.
4. Savetheuser,usingtheSavebuttonfoundonthetoolbar.
Iftheuserorgrouphasbeennewlycreated,itmaybenecessarytosaveandthenreopentheuserorgroupbeforetheRightstabbecomesavailable.
2.ASSIGNRIGHTSTOAUSERORGROUPTheRightstabislocateddirectlybesidethePropertiestabwheneditingauserorgroup.Onceauserhasbeenassociatedwithanaccount,youmaythenrestrictwhichserversarevisibleforthatuser,usingtheRightstab.Alternatively,youmaychoosetoassignrightstogroupsofusers.BothusersandgroupscanbeassignedalimitedsetofvisibleInstances,effectivelyrestrictingwhatthelogged-inusercansee.Followthestepsbelowtoassignrightstoauserorgroup:
1. FromeithertheUserorGroupeditor,clicktheRightstabatthetopoftheeditor.Ifanyrestrictionshavebeenpreviouslyassignedtheywillbelisted,otherwisethelistwillbeinitiallyempty.
2. AtthebottomoftheRightstab,selecttheAddbuttontoopenthelistofavailableInstances.
3. SelecttheInstancesthatyouwishtoconfigurerightsforfromthelist.4. TheInstanceswillbeaddedtotheRightstabwithcheckboxestoAlloworDenyvisibility.5. Aftersavingthechanges,theUserwillonlybeabletoseethoseInstancesintheRightstabthathaveAllowvisibility(Seethenotebelowformoreinformation).IfnoInstancesexistintheRightstab,theuserorgroupcanseeallInstances,unlesstheyareamemberofanothergroupthathasarestrictedsetofvisibleInstances.
SentryOne User Guide | 9
VISIBILITYOFSERVERS(IMPLICITVERSUSEXPLICITDENIAL)Beawareofthefollowingwhenassigningrights:
Onceyoudefinerightsforauserorgroup,anySite,TargetGroup,orInstancewhichdoesnothaverightsexplicitlydefined,willbeimplicitlydeniedtothatuserorgroup.
i.e.auserorgroupwillbedeniedvisibilityforanySite,TargetGroup,orInstancewhichisnotlistedintheirrightstabwithanAllowcheckmark.
WhenyouconfigureRightsBasedSecurityforSitesandTargetGroupsalsobeawareofthefollowing:
AnyParentnode(beitaSiteorTargetGroup)withaDenypermissionexplicitlyconfiguredwilloverrideanyofitschildnodesAllowpermissions.IfaParentnodeisbeingimplicitlydenied,becauserightsarenototherwiseexplicitlydefinedforit,Allowpermissionsconfiguredforanyofitschildnodeswillbehonored.
ADDITIONALINFORMATIONMembershipofthesysadminfixedserverroleisneededtodothefollowingactions(bothoutlinedabove):
1. Edittheloginassociatedwithauser2. Assignrightstousersandgroups
ToensurethatauserhasrightstologintotheSentryOneDatabase,butdoesnothaverightstomodifytheirownpermissions,addtheusertotheallow_alldatabaseroleoftheSentryOneDatabase,andensuretheuserisnotamemberofthedb_datawriterrole.FormoreinformationabouttheavailableSentryOneDatabaserolesseetheRoleBasedSecuritytopic.
OBJECTSHIDDENFROMRESTRICTEDUSERSTheseSentryOneClientrestrictionsareappliedtoanyuserwithRightsBasedSecurityconfigured:
ThefollowingNavigatorNodeswillbehidden/unavailable:
Contacts*MonitoringServiceGroupMonitoringServicesObjectGroups
* Note:TheContactsnodewillnotbehiddeniftheuserissysadminfortheSentryOneDatabase
Thefollowingcommandsareunavailable
Toolsmenu->ManageResponseRulesetsAllTargetscontextmenu->ShowSystemStatusAllTargetscontextmenu->ShowMonitoringServiceList
Additionally,ClientAlertsandobjectnoteswillonlybevisibleforthoseInstancesinwhichtheuserhasrights.
APPLICATIONOFUSERS/GROUPSRIGHTS:Scenario:
Thereare100servers.
SentryOne User Guide | 10
Thereare20users.ThereneedstobetwodifferentgroupsGroupA(10Users)andGroupB(10Users)withvisibilitytodifferentservers.GroupAshouldhaveaccesstoservers1-50GroupBshouldhaveaccesstoservers51-100Oneoftheusers(AllButOne)shouldhaveaccesstoallbutoneoftheserversallowedinGroupAandGroupB.
Setup:
1. Addthe20usersintheClient.2. CreateaGroupAwithrightstoservers1-50byaddingthemontheRightstabandcheckingAllow
3. CreateaGroupBwithrightstoservers51-100byaddingthemontheRightstabandcheckingAllow
4. AddtheuserstotheirrespectivegroupsontheGroups->Propertiestab.5. CreateuserAllButOneandaddtobothgroups.6. OntheRightstabfortheAllButOneuserselectDenyfortheservertheusershouldnotbeabletoaccess.
SentryOnewillcheckgroupsforrestrictedInstancesfirst.Afterthegroupmembershiphasbeenevaluated,userInstancerestrictionsareevaluated.Note:TheDenyoverridesanyAllowthatisconfiguredthroughagroup.
5.2 RoleBasedSecurity
InordertoprovideamoresecureenvironmentandstillallownonSystemAdministratorstotakeadvantageofSentryOne'smanyfeatures,rolesareplacedontheSentryOneDatabaseduringitsinstallationorupgrade.Userscanbeplacedintheserolesallowingthemaccesstothefeaturestheyneed,whilerestrictingaccesstootherfeaturesthatmaybeaboveandbeyondtheirparticularresponsibility.
SETTINGUPROLEBASEDSECURITYRoleBasedSecurityisprimarilyconfiguredthroughT-SQLstatementsorbyusingSSMStosetupdatabaserolesinSQLServer.FirstmakethepersonaUserontheSentryOnedatabaseandaddthemtotheallow_allrole.ThisprovidesfullaccesstotheSentryOnedatabase.
FromhereyoucanaddtheUsertoanyofthecustomdeny_rolestorestrictthatUser'saccesstothedifferentfunctionsofSentryOne.Therolenamesareself-explanatory.Typicallythereisaroletodenyupdatingthespecifiedinformation,andonetodenyreadingtheinformationatall.
ROLES
SentryOne User Guide | 11
Role Description
allow_allProvidesfullaccesstoSentryOne'sfeatures.Placeallnon-saUsersinthisrole,thenaddtodenyrolestorestrictaccess.
deny_actions_read DeniestheabilitytoviewallGeneral,Failsafe,Audit,andAdvisoryConditionactions.
deny_actions_updateDeniestheabilitytomakechangestoanyactions,butallowstheviewingofthosesettings,makingthem"read-only".
deny_appsettings_update DeniesanychangesmadeundertheSentryOneMonitoring Service > Settingsnode.
deny_contact_updateDeniestheabilitytoupdateinformationforindividualUsers,butallowsviewingtheinformation,makingit"read-only".
deny_contactgroup_update DeniestheabilitytoupdateGroupinformation,makingit"read-only".
deny_customconditions_update Deniestheabilitytoenable,disable,create,oreditAdvisoryConditions.
deny_eventchain_read DeniestheabilitytoviewEventChaininformation.
deny_eventchain_update DeniestheabilitytomakechangestoEventChains.
deny_settings_connection_read DeniestheabilitytoviewinformationundertheSettingstabattheInstancelevel.
deny_settings_connection_update DeniestheabilitytomakechangesundertheSettingstabattheInstancelevel.
deny_settings_object_read DeniestheabilitytoviewinformationundertheSettingstabattheObjectlevel.
deny_settings_object_update DeniestheabilitytomakechangesundertheSettingstabattheObjectlevel.
deny_settings_source_read DeniestheabilitytoviewSourceinformationfromtheSettingstab.
deny_settings_source_update DeniestheabilitytomakechangestoSourceinformationfromtheSettingstab.
deny_site_update DenieschangesmadetoSiteConfiguration.
deny_watch_connection DeniestheabilitytowatchorstopwatchinganInstance.
SentryOne User Guide | 12
deny_watch_object DeniestheabilitytowatchorstopwatchinganindividualObject.
ANEXAMPLEForexample,youmayhaveajuniorDBAthatneedstobeabletouseSentryOne'sCalendarViewtocheckforanyfailuresorlongrunningjobsovernight,butyoudon'twantthemtobeabletomakechangestoanyofSentryOne'ssettings.
First,addtheirloginasaUserontheSentryOnedatabase.Next,placethatUserintheallow_allrole.ThiswillensuretheUserhasaccesstoalltheinformationtheyneedwhilebeingexplicitlydeniedanyinformationspecifiedintheadditionalrolesinwhichyouplacethem.Finally,forthisexample,youmaywanttoaddthisUsertoall"deny_"rolesexcepttheonesendingin"_read".ThiswilldenychangestoanysettingsalongwiththeabilitytowatchorstopwatchinganInstanceorobject.
ItisalsoimportanttorememberthatloginsusingSQLServerAuthenticationmustbespecifiedintheSentryOneClientInstanceinformationaswell.GototheFile Menu -> Connect to Installation,unchecktheboxmarked"IntegratedWindowsAuthentication",andentertheUser'sloginandpassword.YouwillthenhavetorestarttheSentryOneClient.ThesenewsettingswillremainineffectonthisSentryOneClientuntilexplicitlychangedagain.
Note: The roles starting with "db_" are SQL Server default roles placed on every database. Useof these roles in the SentryOne database may cause unpredictable behavior.
Role Description
SentryOne User Guide | 13
6 SentryOneClient
TheSentryOneClientprovidesaseamlessexperienceforservermonitoringandoptimization,querytuning,alerting,andjobscheduling,allwithinthesamethinclientinterface.
ThissectiondiscussesthedifferentelementsoftheSentryOneClient.
ClientInterfaceNavigatorPaneEventViewPaneConditionsPaneSettingsPaneClientAlertsMenusUserPreferencesLicenseManagement
NavigatorNodesFavoriteTargetsVirtualizationAllTargets
DefaultSiteTargetsInstances
SQLServerRegistrationsContactManagementSchedulesandWindowsObjectGroupsMonitoringService
MonitoringServiceSettingsSMTPConfiguration
SiteConfigurationInventoryViewMonitoringServiceLoadBalancingandFaultToleranceActionsLogSystemStatusServiceConfigurationUtilityMonitoringServiceLogonAccount
CommonTasksReportingAddingNotesMonitorAdditionalInstancesConnecttoInstallation
SentryOne User Guide | 14
6.1 ClientInterface
TheSentryOneClientinterfaceisdividedupintothreemainareas.Thefirstarea,positionedalongtheleftsideoftheClientbydefault,containstheNavigatorandEventViewpanes.Thesecondarea,positionedalongtherightsideoftheClientbydefault,containstheActionsandSettingspanes.TheWorkspaceareaoccupiesthecenterposition.TheSentryOneClienthasbeendesignedwithanenhancedmultipledocumentinterface(MDI).Allpanesaremovable,dockable,andresizable.Thepanescanalsobesettoauto-hidewhennotinusetoallowforalargerviewableWorkspacearea.
WORKINGWITHPANESBoththeNavigatorandEventViewpanesandtheConditionsandSettingspanescanbeenabledordisabled.Inaddition,thepushpinfeaturecanbeusedtoauto-hidethepanesallowingforalargerWorkspacearea.Thesepanescanalsobedockedorundockedallowingtheworkspacetobecustomizedtobestfityourworkstyle.IntheeventthatthepanesareclosedtheycaneasilyberestoredfromtheViewmenu.
WORKSPACELAYOUTThedimensionsoftheClientPanesandWorkspaceAreaaresavedautomaticallywhenyouclosetheClient.ThedefaultconfigurationcanberestoredbyselectingtheResetLayoutoptionfromtheToolsmenu.
STATUS BARAtthebottomoftheSentryOneClientisastatusbardividedintofoursections.Eachdisplaysinformationincluding:
Thecurrentstatusfortheactiveview(left)
Thecurrentprogressfortheactiveview(middle)
Thecurrentlocationoftheactivewindowrelativetothenavigationtree(right)
TheClientAlertstatusindicator(red-errors,yellow-warnings,green-allok)
Jumpto:
NavigatorPane
SentryOne User Guide | 15
EventViewPaneConditionsPaneSettingsPaneClientAlertsMenusUserPreferencesLicenseManagement
6.1.1 NavigatorPane
TheNavigatoristhetree-viewpanepositionedontheleftsideoftheclientbydefault.ThevariousnodeswithintheNavigatorareusedasthestartingpointindirectingmanyfunctionsoftheSentryOneClient,suchasviewinganEventCalendar,oraPerformanceAnalysisDashboard.TheNavigatornodesarealsousedasthestartingpointtoaccessthevariouslevelsofConditionsandSettingswithintheAlertingandResponseSystem.Rightclickingonanodewillaccessitscontextmenu.
NAVIGATORPANEOVERVIEW
NAVIGATORPANEELEMENTSEach object in your SentryOne Enterprise will have an associated icon. Several of the node iconsin the Navigator pane will vary based on conditions, such as Instance status, or watched status.
INSTANCESTATUSAgreenarrowindicatesthattheInstancehasanOnlinestatus.
AredcircleindicatesthattheInstancehasanOfflinestatus.
AredexclamationpointindicatesthattheInstancerequiresattention.OftenassociatedwiththeSQLServerAgentbeingoffline.
SentryOne User Guide | 16
AnemptycircleindicatesthattheInstancehasawatchedstatusbutisnotbeingactivelymonitored.ThiscanhappeniftheMonitoringServicehasstoppedortheInstancebelongstoasitewithoutanactiveMonitoringService.
InstanceStatusisdeterminedbytheSentryOneMonitoringService'sabilitytocollectinformationfromtheInstance.IfanInstancehasagreenarrowthisindicatesthattheInstancehasanOnlineStatus.IfanInstancehasaredcirclethisindicatesthatanInstancehasanofflinestatus.
ThefollowingisasimplifiedversionofhowInstanceStatusinformationisobtainedanddisplayedintheSentryOneClient.
1. TheSentryOneMonitoringServicefirstgathersInstanceStatusinformation.2. ThisInstanceStatusinformationiswrittentotheSentryOnedatabase.3. TheSentryOneClientretrievesthisInstanceStatusinformationfromthedatabaseanddisplaysit.
YoucanselectanyInstancenodetoaccessadditionalstatusinformation.Atooltipwilldisplaythestatus(Offline/Online),theLastMonitoringServiceInstanceTime,andanyapplicableerrorinformation.
WATCHEDSTATUSAtargetmustfirstbesetto'Watched'beforeSentryOnewillbeginmonitoringit.To'Watch'atargetusetheright-clickcontextmenuofthetarget.YoucanalsohideunwatchedtargetssotheywillnotdisplayintheNavigatorPaneintheUserPreferences(Tools->UserPreferences->Navigator->HideUnwatchedInstances).FormoreinformationaboutwatchingtargetsandobjectsseetheWatchingInstancesandObjectstopic.
Agrayed-outiconindicatesthattheInstance/objectisnotbeingwatched.
AcolorediconindicatesthatInstance/objectisbeingwatched.
INSTANCEICONSThedifferenttypesofInstancesarerepresentedwithdifferenticons.Refertothetablebelow.
SQLServerInstance
AnalysisServicesInstance
WindowsInstance
REDTEXTINTHENAVIGATORPANEIfthelabeltextforanodeisredthisindicatesthataneventobjecthasarecentfailure.Failurescascadefromtheobjectleveluptothehighestgrouplevelcontainingtheobject.Youcanclearajobfailurethroughtheright-clickcontextmenuofthejob,byselectingClearedFailedStatus.YoumayalsoadjusthowlongfailureswillbedisplayedintheNavigatorthroughtheUserPreferences(Toolsmenu->UserPreferences->Navigator->HighlightEventFailuresinNavigatorfor).
SNOOZINGOBJECTSINTHENAVIGATOR
SentryOne User Guide | 17
AllTargets(Global),Sites,Groups,andTargetscanbesnoozedviaarightclickcontextmenuintheNavigatorpane.SnoozinganobjectpreventsanySentryOneactionsfromoccurringwhilethesnoozeisineffect.Thesnoozestatusisinheritedbyobjectslowerinthehierarchy.Forexample,snoozingtheAllTargets(Global)nodewilleffectivelystopallSentryOneactionsintheenvironmentforthedurationofthesnooze.
Asnoozecanbeendedearlyviatherightclickcontextmenuofasnoozedobject.
NOTE:ChangingthesnoozestatusofanobjectisloggedtotheActionsLogviatheAuditConditionSnooze Status Changed.
ADDITIONALINFORMATIONForadditionalinformationaboutthespecificnodesdisplayedintheNavigatorPane,seetheNavigatortopic.
6.1.2 EventViewPane
TheEventViewpaneisusedtofilterwhatisshownintheEventCalendarview.
When you have a Calendar open to switch to the Event View, click the Event View tab at thebottom of the pane.
EVENTVIEWTABSThe following are descriptions for the various Event View tabs:
Filter- Used for general filter settings including run status, review status, duration, andopen text filters.Properties - Displays a description of the view along with time settings and an objectcount. For more details see below.Connections -Displays the Instances and Instance text filters for the current view.Objects- Displays individual Event Objects added to the current view.Event Sources- Allows you to determine the display properties of each Event Source.
Tab FormattingThe formatting of the tab text indicates whether certain filters are enabled or disabled. If an eventsource is deselected, the tab name will be gray. If any objects or categories are selected for asource, the tab name will be in bold. Additionally, any runtime or other filters set on the Filter tabwill cause that tab name to bold.
SentryOne User Guide | 18
Activating FiltersAfter making filter selections, activate the filter by clicking the Apply Filter button near the bottomof the filter menu. When the filter is active, the "Apply Filter" button will have a blue background.
NOTE: Runtime filters do not affect status event objects.
Using Text FiltersMultiple keywords are separated with a semicolon (;). A plus sign (+) is used in front of anykeyword(s) that you want to apply using an "and" operator. Otherwise the keyword will be appliedwith an "or" operator. Text filters can be applied to the Event Object Name, the step text, or to thename of the object owner. If filters are entered in two or more of these text boxes, they will beapplied with an "and" operator.Removing FiltersAny filter settings can be removed from the active view by clicking Remove Filter. This button isnot available on Custom Event Views and other views containing multiple Instances, to ensure afilter is always applied to these views and thus minimize the chance of overloading the SentryOneClient with too much event data.Saving a Filter as a ViewTo save the active filter settings to a Custom Event View, select Save View As from the Filemenu.
PROPERTIES TABThe Properties Tab displays basic descriptive information about the current view. Additionally, thistab provides controls to set the default time slice for this view. This allows you to specify thenumber of days, amount of time, and start time shown for this view every time it is opened. Whena Performance Monitor is placed on a Custom Event View, it is applied to all monitorable objectswithin the view. The View Totals box, at the bottom, allows you to see exactly how many objectswill be monitored.The following are descriptions of the View Totals values.
Connections- The total number of SQL Server instances and Windows Instancesassociated with the view.
Objects From Instances- Gives a count of all objects from those Instances that meetthe filter criteria.
Individual Objects- The number of objects added by the Edit Individual Objects button.
Total Objects- The total objects in the view.
Total Monitored Objects- The total amount of objects that actually have PerformanceMonitors attached to them.
Total Monitorable- The total number of those objects which can have PerformanceMonitors attached to them (SQL Agent Jobs, Reporting Services Reports, and WindowsTasks).
SentryOne User Guide | 19
6.1.3 ConditionsPane
This topic covers information related to the Conditions pane. For a comprehensive list of allavailableActionsincludinginformationaboutconfiguringalertspleaseseetheActionstopicwhichispartoftheSentryOneAlertingandResponseSystemtopicset.TheConditionsPaneisdisplayedontherightsideoftheSentryOneClientbydefault.TheConditionspaneisusedtoconfigureActionsinresponsetoConditionsbeingmet,aspartoftheSentryOneAlertingandResponseSystem.ActionscanbedefinedinresponsetocertainConditionsbeingmetwithinyourenvironment.YoucanchoosefromavarietyofActions,dependingonwhichConditionisbeingrespondedto.
AllConditionsworkontheprincipleofinheritance.ThismeansthatifyouconfigureanActioninresponse to aConditionbeing met at the Global level (All Targets), it will be automatically passeddown to all applicable objects below it. This allows you to define GlobalConditionsfor the mostcommon issues across your environment once, and have those passed down to every monitoredserver automatically. You can further refine Conditions at each level as needed.For a visualrepresentation of how inheritance works within SentryOne see the Alerting and Response SystemHierarchy diagram.
EachConditionthatyouconfigureinyourenvironmentwillhaveanassociatedbehavior.ThebehaviorcontrolshowtheConditionwillbecarriedoutrelativetoanyinheritedConditions.TherearethreeConditionbehaviorsavailable:OverrideInheritedActions,CombinewithInheritedActions,andDisabled.ForacompleteexplanationandexampleusagescenarioforeachbehaviorseetheActionBehaviorsectiontopic.
VIEWTheConditionspaneisdisplayedontherightsideofthescreenbydefault.IfyoudonotseetheConditionspane,usetheViewmenu(View->GeneralActions/FailsafeActions/AuditActions).EachConditiontypehasanassociatedActionstabwhereActionscanbeconfiguredinresponsetoConditionsbeingmet.
Conditionspanesections:
Inherited-ThissectiondisplaystheconfiguredActionsthatarebeinginheritedbythecurrentlyselectedobject.
ConfiguredActionsintheInheritedSectionhaveaStatuscolumnwhichindicatesiftheyapplytothecurrentlyselectedobject.
ConfiguredActionswithaStatusofEnabledhaveGreentext.
ConfiguredActionswithaStatusofDisabledaregrayedout.
Explicit-ThissectiondisplaystheconfiguredActionsthatareexplicitlysetatthecurrentobjectlevel.
AnActionthatisExplicitlydisabledwillhaveRedtext.ConfiguredActionswithaStatusofEnabledhaveGreentext.
SNOOZINGACONDITION/ACTIONAlertscanbesnoozedorsuppressedforaperiodoftimebyrightclickingontheCondition/ActionintheConditionsPaneandselectingoneofthefollowingoptions:
SentryOne User Guide | 20
SnoozethisCondition/ActionCombination-SnoozesthespecificCondition/ActionthatisselectedSnoozethisConditionforAllActions-SnoozesallinstancesoftheselectedConditionregardlessoftheActionassignedtoitSnoozethisActionforAllConditions-SnoozesallinstancesoftheselectedActionregardlessoftheConditionassignedtoit
Additionally,youcanselectwhetherthesnoozeaffectsjustthehierarchicalobjectthatyouselected(Site,Group,Target,Instance)oritaffectsallobjects.
ConditionsthathavebeensnoozedwillhaveagraybackgroundintheConditionsPane.
OnceaCondition/Actionissnoozed,itcanbeunsnoozedbyrightclickingonthesnoozedobjectandselectingtheUnsnoozeoption.Alternatively,youcanunsnoozeallsnoozedConditions/ActionsthroughtheToolsmenu->UnsnoozeAlloption.
6.1.4 SettingsPane
TheSettingspaneiswheresettingsareconfiguredforInstances,Sources,andObjects.Thistabisalso where performance counter thresholds are configured when a counter is selected. Settingscanbeconfiguredglobally,attheInstancelevel,orattheobjectlevel,andjustlikeConditionstheyworkontheprincipleofinheritance.SeeConditionspaneformoreinformation.
CONNECTIONSETTINGSConnectionsettingscanbeappliedatthegloballevelorforanindividualInstance.Toadjustthesettingsatthegloballevel,selectthedevicesnodeandthenselecttheSettingstabtodisplay.TherearethreetypesofsettingsforanInstance;MaintenanceWindow,MiscellaneousandSynchronization.
MAINTENANCEWINDOWSETTINGMaintenanceWindowsettingsallowatimeframetobespecifiedwhereFailsafeNotificationswillbedisabledwhilemaintenanceactivitiestakeplaceonthatInstance.ThiswillpreventexcessivenotificationsthatmayoccurifawatchedInstanceistemporarilyinaccessibleduringtheseactivities.LogActionswillstillbeenabledduringthiswindow,butanyExecuteorSendActionswillnotfire.
MISCELLANEOUSSETTING(SQLSERVER2005ANDABOVE)Auto-enableSQLServerAgentTokens
OnSQLServer2005andabove,SQLServerAgentTokensaredisabledasasecuritymeasure.TheymustbeenabledtoallowSentryOnetowatchAlertsontheseservers.SelectingTrueallowsSentryOnetoautomaticallyenablethesetokenswhenanAlertiswatchedona2005andaboveserver.MoreinformationcanbefoundinSQLServerBooksOnline.
Auto-RecyclelargeSQLServerAgentLogs
ThissettingdetermineswhetherornottoautomaticallyrecyclelargeagentlogfilesinSQLServer2005andabove.
MaximumQueueLength
SentryOne User Guide | 21
Thissettingspecifiesthemaximumnumberofjobsthatcanbequeuedatonetimeonthisserver.SeeJobQueuingformoreinformation.Thedefaultsettingis5.
CollectMemorybyCategoryData(SSAS)ThissettingisusedtoprovidemoredetailthanthebasicCleanermemorydata,butishigheroverheadtocollect. Usecautionwhenenablingtoensureitdoesnotimpactperformance.ThedefaultvalueforthissettingisFalse.
AZURESQLDATABASESETTINGAllowSentryOneMonitoringObjectsinTarget
Inordertoprovidethebestexperience,somefeaturesofmonitoringanAzureSQLDatabaserequiresafewsmalltablesandprocedurestobestoredinthetargetdatabase.TheseobjectswillbecreatedandmaintainedinaSentryOneschema.Ifyouchoosenottoallowthemonitoringobjectstobecreated,thefeaturesdependentuponthem(e.g.,TOPSQLcollection)willbedisabledforthetargetdatabase.ThisissettoFalsebydefault,butcanbechangedgloballyoroverriddenatthetargetlevel.
SYNCHRONIZATIONSynchronizationType
This setting refers to how the SentryOne Client will respond if it discovers the data intheSentryOneDatabaseisnotuptodate.ThedefaultistoshowamessageboxwarningoftheconditionandaskingiftheSentryOneClientshouldsynchronizetheinformationitself.
SynchronizationThreshold
The amount of time that must pass since the last successful synchronization bytheSentryOneMonitoringServicebeforetheClientattemptstosynchronizedirectlywiththetarget.
IMPORTANT: This situation may suggest that the SentryOne Monitoring Service is notretrieving data from this Instance. If this is the case, verify that the SentryOne MonitoringServiceisrunning,andcheckforanyentriesintheFailsafelog.
EVENTOBJECTSETTINGSTo display the Settings for an object type, select the object in either the Navigator or on theCalendar,thenselecttheSettingstab.Foreachcategoryinthedrop-downlistforthejob,globalsettings are displayed. This means that it will be automatically inherited by all SQL Agent JobsunlessoverriddenattheindividualInstanceorjoblevel.
NOTE:Not all event types have object settings, for example, Maintenance Plans or SQL ServerAgent Log.
QueuingSettingsFor SQL Server Agent Jobs only, the Settings screen is used to configure a job’s behaviorwhenqueuinganotherjob,orwhenitisqueuedbyanotherjob.SeeJobQueuingformoreinformation.
RUNTIMETHRESHOLDSSETTINGSIn the Runtime Thresholds section, a value forMinimum Runtime Threshold PercentandMaximumRuntimeThresholdPercentcanbespecified.FortheglobalMinimumThreshold,10%
SentryOne User Guide | 22
isusuallyagoodstartingvalue,andfortheMaximumThreshold,250%isusuallyagoodstartingvalue. Thismeansthatanytimeajobrunsforlessthan10%orlongerthan250%ofit's averageruntimeanotificationwillbesent.Iftoomanymessagesarebeingreceived,thesesettingscanbeadjustedasneeded.Explicit time-basedthresholds canalsobespecified. Anytimeanexplicit time-basedthresholdisspecifiedit will overridethepercentagebasedthresholdsfor that object. Time-basedthresholdsare usually less valuable at the global level, particularly the MinimumRuntime Threshold whichdoesn'thavemuchvalueatallglobally.ExplicitruntimethresholdstendtobemoreapplicableattheactualInstanceorobjectlevelforoverridingtheglobalpercentagethresholdsonacase-by-casebasis.
NOTE:OnenotificationwillbesentoncetheMaximumRuntimeThresholdhasbeenmetandaseparatenotificationwillbesentonceithascompleted.
Forexample,considerajobthathasagreatdealofvolatilityinruntimesuchasatransactionlogbackup,whichcanrunforanywherebetween30secondsand30minutes,andit'saverageruntimeis 5 minutes. To avoid unnecessary percentage-based threshold notifications for the job, oneoption would be to set its Maximum Runtime Thresholdto "35 Minutes" and MinimumRuntimeThresholdto"20Seconds". This canbedonebyselectingeither thejob's nodeintheNavigatororaninstanceofthejobonthecalendar,thenfollowthesamestepsasabovetoaccessandchangethejob'sruntimethresholdsettings.
NOTE: RuntimeThresholdmessagesforReportingServicesReportscompletinginlessthantwominuteswillnotbeprocesseduntiltheyarecomplete.
GENERALEVENTSOURCESETTINGSAuto-watchNewObjects
ThissettingdetermineswhetherornotSentryOnewillautomaticallywatchanynewobjectsthat appear for this event source. It is highly recommended that Auto-watch is set toTrueforallsourcesatthegloballevel,sothatnonewobjectswillslipthroughthecracksandbemissedbySentryOne.ThedefaultsettingisTrue.
MaximumRowstoSynchronize
Use this setting to adjust the amount of historical data to collect fromthis source at anygiven time. This setting is most applicable during the initial synchronization process, toprevent tens or hundreds of thousands of rows frombeingsynchronized fromanexistingserver,whichcancausecontentionissueswiththeSentryOnedatabase.Thedefaultsettingis5000.
MissedRunThreshold
Thesettingdetermineshowmuchtimemustpassinorderforanobjectruntobeconsideredmissed.Thedefaultvalueforthissettingis5minutes.
PERFORMANCECOUNTERSETTINGSThe Performance Counter ('Monitoring Event Object Performance' in the on-linedocumentation)Settingsscreenisusedtosettheminimumandmaximumvaluesforthecounterthresholds of that particular counter. These will be used to trigger thePerformance Counter:Threshold MinandMaxconditions if any conditions are enabled for them. This option is only
SentryOne User Guide | 23
available when selecting a specific performance counter fromthe Navigator Pane. There can beonlyoneminimumandonemaximumvalueforagivencounter,regardlessofhowmanyobjectsarelinkedtothecounter.
BLOCKINGSQLSETTINGSCollectionSettings
TheMinimumBlockDurationsettingdetermineshowlongblockingmustoccurbeforetheblockingconditionistriggered.Thedefaultforthissettingis15seconds.
TOPSQLSETTINGSRuntimeThresholds
TheMaximumRuntimeThresholdvalueisusedwhentriggeringtheTopSQL:RuntimeThresholdMaxcondition.Thedefaultvalueissetto1houratthegloballevelandissetatlowerlevelstobeinheritedbytheparent.Ateachlevel,thisvaluecanbeoverriddenorchanged.
TOPSQLSOURCESETTINGSCollectionSettings
TheMinimumDurationsettingdeterminestherequireddurationforaTopSQLeventtobecollected.Thedefaultsettingis5seconds.Forsafetyreasons,itcannotbereducedbelow100msunlessoneoftheCPU,ReadsorWritesfiltersis>0.
TheMinimumCPU,MinimumReads,andMinimumWritessettingscanalsobeusedtofiltertheTopSQLeventscollected.Thesesettingsare0bydefault.
TheCollectTraceEvents,CollectStatementEvents,andCollectExecutionPlanssettingsspecifywhetherornotthesearecollected.AllaresettoTruebydefault.
IfCollectTraceEventsisdisabled,SentryOnewillnotstartatraceorcollectanyTopSQLeventsfromamonitoredtarget.IfCollectStatementEventsisdisabled,statement-levelinformationwillnotbeavailableinthePlanExplorerStatementsTreewhenviewingaqueryplan.IfCollectExecutionPlansisdisabled,TopSQLeventcollectionwilloccurasnormal,howeverqueryplaninformationwillnotbeautomaticallycollectedforthoseevents.PlaninformationcanstillbecollectedondemandfromwithinaPlanExplorersession,however.
WARNING:Onsystemswithveryhightransactionvolumesthatalsomakeextensiveuseofscalarfunctions,enablingCollectStatementEventsmaycauseanegativeimpactontheperformanceofthemonitoredtarget,regardlessoftheeffectiveTopSQLfiltersettingsorthenumberofeventsactuallycollected.Seealso:Performanceimpact:SQLtraceanduserdefinedscalarfunctions
TheRunningEventsPollingIntervalsettingspecifieshowoftentheservicechecksforrunningevents,primarilyforthepurposeofcapturingqueryplaninformation.ThissettingdoesnotimpacttheactualTopSQLeventscollected.Thedefaultsettingis5seconds.
TheCollectQueryStatssettingenablesthecollectionofquerystats.Thissettingmustbesetto
SentryOne User Guide | 24
trueinorderfortheQueryStatsareaintheTopSQLtabtowork.NotethatinordertocollectquerystatsforAzureSQLDatabaseTargetsthe“AllowSentryOneMonitoringObjectsinTarget”settingundertheAzureSQLDatabaseConnectionsettingscategorymustalsobesettoTrue.
TheQueryStatsSampleIntervalspecifieshowoftentosamplequerystats.
TheFilterTimeSpanspecifiesthebaselengthoftimeoverwhichthecollectionfilterswillbeappliedtoQueryStats.
TheFilterFactoriscalculatedbydividingtheQueryStatsSampleIntervalbytheFilterTimeSpan.ThecollectionfilterssuchasMinimumDurationaremultipliedbythisvaluewhenappliedtoQueryStatscollection.
DEADLOCKSOURCESETTINGSCollectionSettings
Thissettingdeterminesifthedeadlockstatementcollectionisenabled.ThedefaultvalueisTrue.
SQLSERVERAGENTJOBSETTINGSQueuingSettings
Thesesettingsareusedtodeterminethebehaviorofajobwhenitisqueuingotherjobsorwhenthejobisbeingqueued.FormoreinformationseeJobQueuing.
SSASSETTINGSCollectionSettings
TheMinimumDurationvalueistheamountoftimerequiredforastatementtobelogged.Thedefaultforthissettingis1second.
TheCollectMDX/DMX/XMLAEventssettingdetermineswhetherornotthecommandcollectionisenabled.ThedefaultsettingisTrue.
6.1.5 ClientAlerts
TheClientAlertstatusindicatorislocatedinthebottomrighthandcorneroftheSentryOneClient.WhenanAlertstatusisdetected,apopupwithinformationaboutthealertisdisplayed.Youmaychoosetoeitherpinthealert,dismissit,oropentheClientAlertswindow(clickonthealerttext).ClientAlertsaredesignedtogiveyouactionableinformationaboutproblemsinyourmonitoredenvironment.ToopentheClientAlertsdialog,double-clickthestatusindicatorinthebottomrightofthescreen.
YoumaydisablestatusalertpopupsorchangetherecurrenceintervalthroughtheUserPreferences(Toolsmenu→User Preferences →SystemStatus).
Thefollowingcolorscorrespondtothedifferentalertlevels:
AlertLevel Description
Green
(NoAlerts)
AGreenstatusindicatesthattherearenoalerts.
Yellow
(Warning)
AYellowstatusistheWarninglevelindicator.WarninglevelalertsaregeneratedwhenthereisaproblemwhichwilllimitthefullfunctionalityofSentryOne.ThiscouldincludetheSQLServerAgentbeingoffline.
SentryOne User Guide | 25
Red
(Error)
ARedstatusistheErrorlevelindicator.Errorlevelalertsaregeneratedwhenthereisasignificantprobleminyourmonitoredenvironment,suchaswhenaInstancehasbeendetectedasoffline,orifthereisaproblemsynchronizingdata.
IfyouwouldliketoconfigurenotificationsforInstanceStatusandMonitoringServiceerrorsbesuretoreviewtheavailableFailsafeConditions.
ConcerningtheHistorySynchronizationFailedAlert
IfyouseethefollowingClientAlerterrormessageconcerninghistorysynchronization:
History Synchronization Failed: Message: SQL Server Agent has information logging turned on. The log will fillquickly in this state. Agent log history synchronization will be paused until information logging is turned off.
ThiserrorindicatesthatInformationloggingisenabledfortheSQLServerAgentlog.Withthislevelofloggingenabled,theAgentlogwillquicklygrowbeyond1megabyteinsize.TheoverheadassociatedwithreadingtheSQLServerAgentlogwhenitgrowstothissizecancauseperformanceproblems.SentryOnewillnotsynchronizetheAgentloguntilInformationloggingisdisabled.
Informationloggingcanbeturnedoffasfollows:
1. FromSSMS(SQLServerManagementStudio),right-clicktheErrorLogsfolderwithintheSQLServerAgentgroupnodefortheassociatedserver,andselecttheConfigurecommand.
2. UncheckInformation,andclickOKtosave.
FormoreinformationaboutSQLAgentlogsynchronizationissues,seethisKBarticle.
6.1.6 Menus
ThemenusandtoolbarsareusedtooperatetheSentryOneClient.Theoptionsavailablewithinthemenuswillvarydependingontheactivewindow.FormoreinformationaboutthetoolbarsseethePerformanceAnalysistoolbartopicandtheEventCalendartoolbartopic.
FollowingaredescriptionsofthecommandsfoundinthevariousSentryOnemenus.
TheFileMenu:
Item Hotkey Description
NewInstance n/a AddanewInstancetotheNavigatorPane.
NewPlanExplorerSession n/a OpensanewPlanExplorerSession.
Open n/a OpenExecutionPlanfiles.
ConnecttoInstallation... n/a SpecifytheSentryOneDatabaseandauthenticationinformationfortheclient.
Save Ctrl+S Savechangestotheactivewindow.
SaveViewAs n/a Renameandsavetheactiveview.
Close Ctrl+W Closetheactivewindow.
ExportData Ctrl+E ExportEventListViewsandvarioustabsofPerformanceAnalysis.
SentryOne User Guide | 26
PageSetup n/a Setthepageoptionsforprinting.
Print n/a Printtheactivewindow.
PrintPreview n/a Previewtheactivewindowforprinting,exportingandsendemailoptions.
RecentFiles n/a DisplayalistofrecentlyopenedPlanExplorerfiles.
Exit Ctrl+Q ExittheSentryOneClient.
TheViewMenu:
Item Description
Navigator ViewtheNavigatorPane
EventView ViewtheEventViewPane
PlanHistory ViewthePlanHistoryPane
Conditions ViewtheConditionsPane
Settings ViewtheSettingsPane
StartPage ViewtheStartPage
TheCalendarMenu:
Item Description
ShowConflicts Exploreconflictsforspecifiedtimerange.
ViewStyle SelecttheviewstyleforEventCalendar.
TheReportsMenu:
FormoreinformationabouttheReportingoptionsinSentryOneseetheReportingtopic.
Item Description
EventCalendar EventCalendarassociatedreports.
PerformanceAnalysis PerformanceAnalysisassociatedreports.
General Generalreports.
ReportDeploymentSettings SQLServerReportServerlocationthatyouwishtodeployyourreports.
DeployReports DeploysthereportstothelocationspecifiedintheReportDeploymentSettings.
SentryOne User Guide | 27
ImportReports UsedtoimportfuturereportscreatedbytheSentryOnedevelopmentteam.
TheToolsMenu:
Item Hotkey Description
UserPreferences Ctrl+O SettheSentryOneClientUserPreferences.
FindObject Ctrl+F Objectsearchtool,usedtofindEventObjectswithintheSentryOneClient.
ManageResponseRulesets n/a OpensallResponseRulesetsforediting.
ResetEventViewFilter n/a RestoresEventviewFiltersettingstodefault.
ResetLayout n/a RestorestheLayouttodefault.
DownloadLatestAdvisoryConditionsPack n/a DownloadslatestAdvisoryConditionpackfromSentryOne.
TheWindowMenu:
Item Description
Cascade Cascadeactivewindowsintheworkspaceview.
TileVertical Tileactivewindowsverticallyintheworkspaceview.
TileHorizontal Tileactivewindowshorizontallyintheworkspaceview.
Tabbed Displayactivewindowsontabsintheworkspaceview.
ShowTabsonMultipleLine Allowsmultiplerowsoftabstobedisplayed.
Auto-RotatePerformanceAnalysisTabs
Auto-rotatesthroughtheactivePerformanceAnalysiswindowswhenenabled.TherotationdoesnotchangetheactivetabofaPerformanceAnalysiswindow.Therefore,whichevertabisselectedasactivewillberefreshedasthewindowsrotate.
ActiveWindowsName AlltheActiveWindowsarelistedhere.
TheHelpMenu:
Item Hotkey Description
SentryOneHelp Ctrl+HorF1
OpenstheSentryOneUserGuide.
Item Description
SentryOne User Guide | 28
SentryOneQuickStartGuide
Ctrl+F OpenstheSentryOneQuickStartGuide.
SetupWizard n/a StartstheSentryOneSetupWizard.
CheckforUpdates n/a ConnectswithSentryOne'sonlinerepositoryandverifiesthatyouhavethelatestversion.
ManageLicenses n/a OpenstheLicenseEntrywindowwhereyoucanviewandmanageSentryOneLicenses.
SQLPerformance.comPost n/a CreateapostonSQLPerformance.com
StartRemoteSupportSession
n/a EnteraPinandlaunchasupportsession.
Logging n/a
OptionstoenabletraceloggingfortheSentryOneClientandMonitoringServicefortroubleshootingpurposes.PleasecontactSentryOnesupportbeforeyouenablelogging.Logsarestoredintheinteractiveuser'sAppData\Local\SentryOnedirectory.
About n/a Displayscurrentversion,licensinginformation,expiration.
Item Hotkey Description
6.1.7 UserPreferences
ToreviewtheuserpreferencessetinyourSentryOneClient,selectUserPreferencesfromtheToolsMenu.TheRestoreDefaultscommandwillresetallUserPreferencestothedefaultvalue.UserPreferencesallowyoutocustomizethebehaviorandappearanceofyourSentryOneClient.
CALENDAR
Settings Description
CalendarRefreshInterval SettherefreshratefortheCalendar
ShowEventsAsConflictsAfter Specifythedurationthattwoormoreeventinstancesmustoverlapbeforebeingshownasaconflict
ShowPopupsFor Setthepersistenceofpopupmessagesonthecalendar
DefaultdaysforGlobalandGroupviews
Setthedefaultnumberofdaystodisplaywhenopeningtheseviews
PersistCalendarFilterBetweenViews Selecttosavethefiltersettingsbetweenviews
SentryOne User Guide | 29
Auto-scrollCalendartoCurrentTime SelecttoenableAuto-ScrollfortheCalendaraftertherehasbeennouseractivityforaperiodoftime.
Maximumrowstoreturnforcalendar/listviews
Limitingthisvaluehelpstoavoiddelaysinloadingviewsduetoalargevolumeofdata.
ShowRunningandHistoricalEventsinRecurringWindowifDurationExceeds
ThisvaluedetermineswhateventswillappearintheRecurringWindowatthetopoftheCalendarview.
DefaultintervalwhenusingJumpTo
InstancecontextmenusSetthetimeintervalwhichwillbeshownwhenusingJumpToInstancecontextmenus
NAVIGATOR
Settings Description
HighlightEventFailuresinNavigatorfor
SetthelengthoftimetodisplayfailedeventsinredwithintheNavigator.IfyouenabletheUntilClearedoptionfailureswillremaininreduntiltheyaremanuallycleared.
Automaticallyclearopenfailuresifasubsequentrunissuccessful
IfthesubsequentrunofanobjectissuccessfulthenodewillnolongerbemarkedasfailedintheNavigatorpane.
Showboldtextforfailures Itemswillbecomeboldandredintheeventofafailure.
RefreshFailuresinNavigatorEvery
SpecifyhowoftentheNavigatorpanewillberefreshedtoshowfailures.
ShowFailuresforUnwatchedObjects
EnablethissettingtodisplayunwatchedobjectsinredwithintheNavigatorpaneafterfailure.
HideUnwatchedInstances
EnablethissettingtohideunwatchedInstancesintheNavigatorpane.
DefaultEventViewStyle
SelectthedefaultviewtoshowwhenopeninganEventCalendar.
Promptmetoselectaproductwhenleft-clickingtoopenanode
DetermineswhetherornottopromptfortheproducttousewhenopeninganInstance.Whenuncheckedthedefaultviewfordevice/Instancenodeswillbeused.
DefaultviewforTarget/Instancenodes
DetermineswhatactionSentryOnewilltakewhenyouclickonaTargetorInstancenode.
Settings Description
SentryOne User Guide | 30
Auto-synchNavigatorwiththeselectedtab
EnablethissettingtosynchobjectsselectedinthecurrenttabwiththeNavigatorpane.
Auto-synchSettings/Actionswiththeselectedtab
EnablethissettingtosynchobjectsselectedinthecurrenttabwiththeSettingsandConditionspane.
Single-clickopensnewtabs
Enablingthissettingwillallowtheopeningofnewtabswithasingleclick.
Persistlast"JumpToTime"value
Enablethissetting,andeachtimetheJumptoTimecontextmenuitemisused,theprevioustimeselectionwillbehighlightedbydefault.
ShowwarningwhenAlertwatchfailsduetodisabledSQLAgentAlertTokens.
Ifenabled,SentryOnewillwarnyouifyoutrytowatchanAlertonaSQLServer2005andaboveInstanceanddon'thaveAgentTokensenabled.
SynchronizeSQLServerregistrationsanytimearegistrationgroupisexpanded
Ifenabled,SentryOnewillsynchronizeregisteredserversundertheSQLServersnodeanytimearegistrationgroupisexpanded.Whennotchecked,theoptionto"SynchronizeSQLServerGroups..."canbeusedintheNavigatorpanetodothis.
ManuallymanagefoldersforReportingServices
AllowsyoutocreateandmanagefoldersbeneaththeReportingServicesnode.
DefaultStartupAction Determinesthefirsttabdisplayedonstartup.
COLORSMostoftheelementsintheEventCalendarviewmayhavetheircolorscustomized.BesideeachcolorselectionisaPickbutton.WhenyouselectaPickbutton,theColorpaletteisdisplayed.TheDefaultbuttonisusedtoresetallcolorstotheirdefaults.
GRAPHS
Item Description
MaximumrowstoreturnforgraphsonRuntimeStats
Limitstheamountofdatashowninruntimegraphsforperformancereasons.
Maximumrowstoreturnforperformancegraphs
Limitstheamountofdatashowninperformancegraphsforperformancereasons.
UPDATES
Settings Description
SentryOne User Guide | 31
Item Description
Automaticallycheckforsoftwareupdatesonstartup
Whenchecked,SentryOnewillautomaticallycheckforupdatesonstartup.Checkedbydefault.AnInternetconnectionisrequired.
AutomaticallycheckforAdvisoryConditionsPackupdates
Whenchecked,SentryOnewillautomaticallycheckforanupdatedAdvisoryConditionsPackwhenlaunchingtheGloballevelConditionsList.Checkedbydefault.Aninternetconnectionisrequired.
SYSTEMSTATUS
Item Description
SystemStatusRefreshInterval Thissettingcontrolshowoftenthesystemstatusscreenisrefreshed.
ShowSuccessfulTasksforupto SetthelengthoftimesuccessfultaskswilldisplayontheSystemStatusscreen.
DisableStatusPopups IfenabledClientalertstatusmessagepopupswillnotbedisplayed.
ClientAlertRecurrenceInterval Thissettingcontrolstherecurrenceintervalforalertpopups.
PERFORMANCEANALYSIS
Item Description
ShowoptionsonQuickTracelaunch
Whenchecked,certainoptionsareavailablewhenaQuickTraceislaunchedmanually.Whenunchecked,thelastoptionsconfiguredwillbeused.Optionsincludeduration,rowstocollect,etc.
TabAuto-rotationFrequency Whenusedinconjunctionwith"Window>Auto-rotatePerformanceAnalysisTabs,"itdetermineshowoftenthetabchanges.
PerformanceAnalysisOverviewRefreshInterval Usedtoconfigurehowoftendataisrefreshed.
Defaulttimespanforhistorymode DefinestheHistoryModedashboard'sdefaulttimerange.
PerformanceAnalysisOverviewSkin UsedtoselecttheskincolorforthePerformanceAnalysisOverviewscreen.
WarnonActualPlanExecution
Ifthisoptionisenabled,whentheActualPlancommandisselectedtheuserwillbeaskedto'ConfirmQueryExecution'beforethePlanwillbecollected.Youcandisablethesewarningsbyunselectingthissetting.
DefaultActualPlanCollectionMode DefineswhetherornotliveprofiledataiscollectedbydefaultwhenanActualPlanisretrieved.
SentryOne User Guide | 32
LiveProfileDataCollectionInterval Defineshowoftenliveprofiledataiscollectedduringqueryexecution.
Onlysavehistorywhencommandtextorconnectionsettingschange
Ifenabled,queryplansessionswillonlygeneratehistoryentrieswhenthecommandtextorconnectionsettingsarechanged.
AllowopeningmultiplePerformanceAnalysisinstancesforthesameTargetusingtheNavigator
Ifchecked,PerformanceAnalysistabswillnotbereusedforthesameTarget.
DefaultLinkStyle Defineshowoftenliveprofiledataiscollectedduringqueryexecution.
DefaultDashboardMode DefinesthedefaultDashboardmodewhenopeningPerformanceAnalysisforatarget.
PrompttoSaveSessionUponExit Ifchecked,apromptwilldisplayuponexittosavetheactivetabsandpanes.
Item Description
6.1.8 LicenseManagement
SentryOneisgenerallylicensedperindividualmonitoredtarget.ThisincludesproductsforWindowsServer,SQLServer,AnalysisServices,VMware,andAzureSQLDB.WinSentry,andVSentrycanbelicensedpercore.Thisismostoftenusedinvirtualizedenvironments.Hypervisorhostsarelicensedbasedontheirnumberofprocessorcores,andanyvirtualmachinesmanagedbythehostarelicensedforallrelevantproducts.LicensingisindependentoftheSentryOneClient,andthereisnolimittothenumberofClientswhichmaybeinstalledinyourenvironment.LicensingisalsoindependentofthenumberofSentryOneMonitoringServicesinstalledinyourenvironment.
ANALYTICSPLATFORMSYSTEMANDSQLDATAWAREHOUSELICENSINGThelicensingforMicrosoftAnalyticsPlatformSystem(APS)andSQLDataWarehouse(SQLDW)differfromthetraditionalSentryOnelicensingmodel.MonitoringforthesetypesofTargetsisdependentonlicenseunits.InordertomonitoranAPSorSQLDWTarget,anumberoflicenseunitsequaltoorgreaterthanthenumberofcomputenodesonthetargetisrequired.Ifthenumberofcomputenodesexceedsthenumberoflicenseunits,monitoringwillbesuspendeduntiladditionallicenseunitsareapplied.Forexample,ifasixcomputenodeSQLDWtargetisbeingmonitoredwithasixnodelicense,thentwoadditionalnodesareaddedtotheSQLDWenvironmenttoaccommodateincreasedactivity,monitoringwillstopuntilanupdatedlicensethatincludesadditionallicenseunitsisapplied.
FREELICENSEOFSQLSENTRYFORMONITORINGTHEREPOSITORY
SentryOne User Guide | 33
INSTANCEItispossibletoobtainafreelicenseofSQLSentryforthepurposeofmonitoringtheSQLServerinstancethatcontainstheSentryOnedatabase.Thefreelicenseisavailablewhenanyofthefollowingistrue:
Five(5)ormoreSQLSentrylicensesareownedOne(1)ormore(core-based)licenseisowned
IMPORTANT NOTE: The free license will NOT appear in the license count in the Help >Aboutwindow,whetherornotthefreelicenseisused.There are no annual software maintenance costs for the free license, and the license isperpetual.
THEHARDWAREKEYYourSentryOnelicensehasahardwarekeywhichistiedtothelocationofyourSentryOneDatabase(denotedbytheSQLServerinstancename).IfforanyreasonyoudecidetorelocatetheSentryOneDatabase,thishardwarekeycanbeupdatedthroughourCustomerPortalbyanyauthorizedaccountholder.Asalways,youmaycontactSentryOnesupportifyouhaveanyproblems.IfyouareplanningonmovingtheSentryOneDatabase,pleaseseetheRelocatingtheSentryOneDatabasetopic.
APPLYINGANEWLICENSEYoucanmanageyourlicensewithintheSentryOneClientwiththeManage Licensescommand,whichcanbefoundthroughtheHelpMenu(Help menu → Manage Licenses).TheManageLicensescommandwillbringuptheLicenseEntrywindow.
SelectEdittoupdatethelicense.SelectCleartocleartheexistingtext.Toenteranewlicense,youcaneithercopyandpastethelicensetextintothewindow,ordrag-and-dropalicensefileintothespaceprovided.ClickSavetoapplythelicense.
TheSentryOneClientwillberestartedtoensurethatthenewlicensesettingstakeeffect.
LICENSEOVERVIEWIfyouwouldliketoviewadditionallicenseinformationsuchasthenumberoflicensesappliedthroughouttheenvironment,youcanusetheAboutcommand,whichcanbefoundthroughtheHelpMenu(Help menu → About).
TogetanoverviewofhowyourlicensesareappliedthroughoutyourenvironmentyoucanalsousetheInventorynode,whichcanbefoundintheConfigurationgroupintheNavigatorPane.
Double-clickingtheInventorynodewillbringupthetargetsWorkspaceArea,whichwilllisteverytargetthatSentryOnehasevermonitored.Acheckmarkindicatesthatthetargetiscurrentlybeingwatched.Anemptycheckboxindicatesthatthetargetisnotbeingwatched.
Ifyouwouldliketoreclaimalicense,clickonthecheckboxtostopwatchingthattarget.Thatlicensecanthenbeappliedtoanothertargetasneeded.
SentryOne User Guide | 34
SEEALSOInstances
RelocatingtheSentryOneDatabase
6.2 NavigatorNodes
TheSentryOneNavigatorsectioncontainsthefollowingtopics:
FavoriteTargetsVirtualizationAllTargets
DefaultSiteTargetsInstances
SQLServerRegistrationsContactManagementSchedulesandWindowsObjectGroupsMonitoringService
MonitoringServiceSettingsSMTPConfiguration
SiteConfigurationInventoryViewMonitoringServiceLoadBalancingandFaultToleranceActionsLogSystemStatusServiceConfigurationUtilityMonitoringServiceLogonAccount
6.2.1 FavoriteTargets
EachSentryOneClienthasitsownuniqueFavoriteTargetsgroup.TheFavoriteTargetsgroupisusedtodefineaviewofTargetsandInstancesspecifictothatindividualSentryOneClient.Thisisusefulinalargeenvironment,asitallowsanindividualusertoeasilyspecifyasubsetofTargetsandInstanceswhichtheyareresponsiblefor.YoumaytoggledisplayingtheFavorite TargetsnodewiththeShowFavoriteTargetsbuttonlocateddirectlyabovetheNavigatorpane.
WhenyouaddaTargetoranInstancetoyourFavoriteTargets,ifitisnotalreadyapartofyourSentryOneEnvironment,itwillbeaddedtotheDefaultSiteoftheAllTargetsnode.WhenyouaddaTargetorInstancetoyourFavoriteTargetsthatisalreadyapartofyoursharedSentryOneEnvironment,theTargetorInstancewillnotbeduplicated.Asmentionedearlier,theFavoriteTargetsgroupisuniquetoeachSentryOneClientanddefineaviewofyourlargerSentryOneEnvironment.
SentryOne User Guide | 35
ChangesyoumakeregardingtheWatchedstatus,ortoanyconfiguredSettings,Conditions,andActionsfromthecontextoftheFavoriteTargetsgroupnodewillbemirroredintheAllTargetsnode.Inthesameway,changesmadetoTargetsandInstancesfromthecontextoftheAllTargetsnodewillalsobemirroredbacktoanyFavoriteTargetgroupswhichtheybelong.
6.2.2 Virtualization
TheVirtualizationnodehousesthesupportforVMwareandHyper-Vvirtualizationoptions.
VMWAREToaddavCenter,right-clickontheVMwarenodeandselecttheAdd vCenteroption.Entertheservernameanddisplayname,theneitherenteryourcredentialsorchecktheboxtouseSSPI.YoucanalsoselectwhichSitewillberesponsibleforthemonitoringofthevCenter.
InordertoaddavCenter,theMonitoringServicemustbeaconfigureduseronthevCenterimplementationandmusthaveread-onlyaccessattheminimum.
NOTE:IfusingSSPIauthentication,besuretoselectaSitewheretheMonitoringServicehasatleastread-onlyaccesstothevCenter.
HYPER-VWheneveraHyper-VGuestorHostismonitoredwithSentryOne,itwillappearundertheHyper-Vnode.IftheHostismonitoredwithSentryOne,allofthatHost'sGuestswillappearaswell.IfonlyaGuestiswatchedwithSentryOne,thatGuest'sHostwillbedisplayed.
6.2.3 AllTargets
TheAllTargetsnodeistherootnodeoftheSentryOneClientandcanbefoundinthetoppositionoftheNavigatorPane.AllTargetsthatareregisteredacrosstheentireSentryOneenterprisecanbefoundwithinAllTargets.
TheAllTargetsnodecanbeusedtoconfigureGlobalConditionsandSettingswithintheSentryOneAlertingandResponseSystem.TheAllTargetsnodecanalsobeusedtoviewtheEventGlobalViewCalendaroraPerformanceAnalysisSharedTargetsoverview.
AllTargetsContextMenu
RightclickontheSharedGroupsnodetoaccessitscontextmenu.Thefollowingcommandsareavailable:
Command Description MoreInformation
Open→EventCalendar OpenstheEventManagerGlobalViewofyourSentryOneenterprise.
EventCalendar
Open→PerformanceOverview OpensthePerformanceAnalysisSharedTargetsOverview.
PerformanceAnalysisOverview
AddSite AddsanewSitenodebeneaththeSharedGroupsNode.
SiteConfiguration
DefaultSite
SentryOne User Guide | 36
AddConnection AddsanewConnectiontotheDefaultSite.Connections
DefaultSite
GLOBALLEVELOFTHEALERTINGANDRESPONSESYSTEMTheAllTargetsnodeisusedtoconfigureGlobalConditionsandSettingswithintheSentryOneAlertingandResponseSystem.WhentheAllTargetsnodeisselectedintheNavigatorpane,theassociatedgloballevelConditionsandSettingspanewillbeavailable.IfyoudonotseetheConditionsandSettingspanewhentheAllTargetsnodeisselected,usetheViewMenutobringupthedesiredpane.ConditionsandSettingsconfiguredattheAllTargetslevelareglobalinnature.ThismeansthatwhenaConditionorSettingissetattheSharedGrouplevelitwillautomaticallypropagatedownthroughoutyourSentryOneenvironment.
Example:
YouconfigureaSendEmailActionfortheSQLAgentJob:FailureconditionattheAllTargetsgloballevel.
AnemailwillnowbesentanytimeanAgentJobfailsacrossyourentiremonitoredenvironment.
OnceGlobalConditionsandSettingsareconfigured,moregranularconfigurationscanbemadewhereneededatthelowerlevels.FormoredetailsonhowGlobalConditionsandSettingsareinheritedthroughoutyourSentryOneenvironment,andinformationaboutsettingupalertingforyourSentryOneinstallation,seetheAlertingandResponseSystemtopic.
GLOBALVIEWSYoucanaccessGlobalViewsofyourSentryOneenterprisethroughtheAllTargetsnode.ThiscanbedonebyeitherdoubleclickingtheAllTargetsnodeorbyusingitsright-clickcontextmenu.ThedefaultnumberofdaysfortheGlobalCalendarviewisoneday,andcanbeadjustedintheUserPreferences.
ThePrimarypurposeoftheGlobalViewsisgiveyouinsightintowhatishappeningacrossyourenterprisewithouthavingtoopenindividualEventCalendarsorPerformanceAnalysisdashboardsatthetargetlevel.FutureandrunningeventsaredisabledintheEventCalendarGlobalview,butyoucanadjusttheruntimefilterandotherfiltercriteriaontheEventViewfiltertabtofurtherrefinethedisplayforpersonalpreferences.FormoreinformationaboutthePerformanceAnalysisSharedTargetsOverview,seethePerformanceAnalysisOverviewtopic.
ALLTARGETSCHILDNODESJumpto:
→DefaultSite
→Targets
→Instances
Command Description MoreInformation
SentryOne User Guide | 37
6.2.3.1 DefaultSite
SitesrepresentalogicalgroupingofTargets,Instances,andMonitoringServiceswithinyourSentryOneenvironment.IfyouareupgradingfromapreviousversionofSentryOneyouwillnoticethattheSitesdisplayedbeneaththeAllTargetsnodedirectlyreflectthosesitesyoupreviouslyconfiguredwithintheSiteConfigurationnode.IfyouareanewuseryouwillnoticethattheInstancesyouaddedusingtheQuickstartwizardareallcontainedintheDefaultSite.
WhenaSitenodeisselectedintheNavigatorpanetheassociatedSitelevelConditionsandSettingspanewillbeavailable.IfyoudonotseetheConditionsandSettingspanewhentheSitenodeisselected,usetheViewMenutobringupthedesiredpane.ConditionsandSettingsconfiguredattheSitelevelapplytoallTargets,Instances,andObjectsinthatSite.ThismeansthatwhenaConditionorSettingisconfiguredattheSitelevelitwillautomaticallypropagatedownthroughoutthatSite.
SiteContextMenu
RightclickonanySitenodetoaccessitscontextmenu.Thefollowingcommandsareavailable:
Command Description MoreInformation
AddTarget AddsanewTargettotheselectedSite. Targets
AddTargetGroup AddsanewTargetGrouptotheselectedSite. Targets
AddConnection AddsanewConnectiontotheselectedSite. Connections
DeleteSite DeletesaSitefromtheSharedGroupnode.AnyTargetsorgroupscontainedwithintheSitemustfirstbedeletedbeforeasitecanbedeleted.ThiscommandisnotavailablefromtheDefaultSitenode.
Warning:TheDeleteTargetcommandispermanent,seetheTargetstopicformoreinformation.
n/a
RenameSite RenamesthecurrentlyselectedSite. n/a
OpenPerformanceAnalysis
OpensaPerformanceAnalysisOverviewforeveryTargetintheSite.
PerformanceAnalysisOverview
MONITORINGSERVICESBeneatheverySitenodethereisaMonitoringServicesnode.ThisMonitoringServicesnodecontainstheMonitoringService(s),identifiedbytheirassociatedTargetname(s),thatareresponsibleforcollectinginformationpertainingtothatsite.
TheSentryOneMonitoringServiceisaWindowsServicewhichisresponsibleforcollectingeventhistory,eventstatus,andperformancerelatedinformationandstoringthatinformation
SentryOne User Guide | 38
intheSentryOneDatabase.MonitoringServicesarealsoresponsibleforsendingnotificationsbasedonevents.
TheMonitoringService(s)withinaSiteareresponsibleforgatheringinformationaboutthosewatchedTargetsandInstancescontainedwithinthatsamesite.AvailableMonitoringServicescanbeassignedtoSiteseitherthroughtheSiteConfigurationnodeorbydragginganddroppingaMonitoringServicewithintheNavigatorpane.This enables you to control exactly whichMonitoring Services watch which Targets, and can be critical for scenarios where you havemultiple servers located at different geographic locations. Having a Monitoring Service for eachgeograpic location minimizes network traffic across the WAN.
For more information see the Monitoring Services and Site Configuration topics.
TARGETSBeneatheverySitenode,areitsassociatedTargetnodes,identifiedbytheTarget'sname.EachTargetnoderepresentsaphysicalcomputer,commonlyaWindowsServer,withinyourSentryOneEnvironment.ContainedbeneatheveryTargetnodearethoseassociatedInstancesthatresideonthatTarget.
WithintheframeworkoftheAlertingandResponseSystemHierarchy,TargetsrepresentalevelbetweenSitesandInstances.ThismeansthatwhenaConditionorSettingisconfiguredataTargetlevelitwillautomaticallypropagatedowntoitsassociatedInstances,andobjects.
IfyoudonotseetheConditionsandSettingspanewhenaTargetnodeisselected,usetheViewMenutobringupthedesiredpane.ConditionsandSettingsconfiguredattheTargetlevelapplytoallInstances,andObjectsbeneaththatTarget.ThismeansthatwhenanConditionorSettingisconfiguredattheTargetlevelitwillautomaticallypropagatedowntoitsassociatedInstances,andobjects.
FormoreinformationseetheTargetstopic.
INSTANCESContainedwithineveryTargetnodeareitsassociatedInstancenodes.InstancesareidentifiedbytheirTarget/Instancename.ContainedbeneatheveryInstancenodeareitsassociatedobjects.
WithintheframeworkoftheAlertingandResponseSystemHierarchy,Instancesrepresentalevelaboveobjects.ThismeansthatwhenaConditionorSettingisconfiguredatanInstancelevelitwillautomaticallypropagatedowntoitsassociatedobjects.
IfyoudonotseetheConditionsandSettingspanewhenanInstancenodeisselected,usetheViewMenutobringupthedesiredpane.ConditionsandSettingsconfiguredattheInstancelevelapplytoallobjectsbelongingtothatInstance.ThismeansthatwhenaConditionorSettingisconfiguredattheInstancelevelitwillautomaticallypropagatedowntoitsassociatedobjects.
FormoreinformationseetheInstancestopic.
SentryOne User Guide | 39
6.2.3.2 Targets
ContainedwithineverySitenodeareitsassociatedTargetnodes.TargetnodesareidentifiedwiththeTarget'sfullname,usuallyComputerName.DomainName.EachTargetnoderepresentsaphysicalcomputer,commonlyaWindowsServerwithinyourSentryOneEnvironment.BeneatheveryTargetnodeintheNavigatorpaneareitsassociatedInstances.
DoubleclickanyTargetnodetoaccessitsrelatedPerformanceAnalysisDashboardorEventCalendar.
TargetsContextMenu
RightclickonanyTargetsnodetoaccessitscontextmenu.Thefollowingcommandsareavailable:Instances
Command Description MoreInformation
Open→EventCalendar
OpenstheEventManagerCalendarViewfortheassociatedTarget. EventCalendar
Open→PerformanceAnalysis OpensthePerformanceAnalysisdashboardfortheassociatedTarget. PerformanceAnalysisDashboard
ShowWindowsProcesses LaunchesaProcessActivityWindowsimilartoWindowsTaskManagerfortheassociatedTarget.
WindowsProcessActivity
AddInstance AddsanewInstancetotheDefaultSite.
DeleteTargetWarning:ThiscommandwillDeletetheactualregistrationfortheTargetfromSentryOne.ThisincludesthedeletionofallhistoricalinformationforanyassociatedconnectionsbelongingtotheTargetfromtheSentryOneDatabase.Thiscommandisfinalandcannotbeundone.OnlyusethiscommandifyouwanttopermanentlydeleteinformationSentryOnehasstoredabouttheTargetanditsassociatedConnectionsfromtheSentryOneDatabase.
JumptoTime Allowsyoutoselectadate,timeofday,andtimeframeforanEventManagerCalendar
ScanforConfigurationChanges
Thisscanlooksforanyhardware,network,orschemachangesthathavetakenplaceontheTargetoritsassociatedInstances.Note,thisinformationisautomaticallygatheredperiodically.
n/a
TARGETCONDITIONSANDSETTINGSWithintheframeworkoftheAlertingandResponseSystemHierarchy,TargetsrepresentalevelbetweenSitesandInstances.ThismeansthatwhenaConditionorSettingisconfiguredataTargetlevelitwillautomaticallypropagatedowntoitsassociatedInstancesandobjects.
IfyoudonotseetheConditionsandSettingspanewhenaTargetnodeisselected,usetheViewMenutobringupthedesiredpane.ConditionsandSettingsconfiguredattheTargetlevelapplytoallInstancesandobjectsbeneaththatTarget.ThismeansthatwhenanConditionorSettingisconfiguredattheTargetlevelitwillautomaticallypropagatedowntoitsassociatedInstancesandobjects.
SentryOne User Guide | 40
ADDINGATARGETTOYOURENVIRONMENTToaddanewTargettoyourinstallationyoucanusetheAddTargetcommandfoundintherightclickcontextmenuofanySiteNode.
DELETINGATARGETFROMYOURENVIRONMENTTodeleteaTargetfromyourinstallationusetheDeleteTargetcommandfoundintheright-clickcontextmenuofanyTargetnode.PleaseseethefollowingwarningconcerningtheDeleteTargetCommand.
Warning:TheDeleteTargetcommandwillDeletetheactualregistrationfortheTargetfromSentryOne.ThisincludesthedeletionofallhistoricalinformationforanyassociatedInstancesbelongingtotheTargetfromtheSentryOneDatabase.Thiscommandisfinalandcannotbeundone.OnlyusethiscommandifyouwanttopermanentlydeleteinformationSentryOnehasstoredabouttheTargetanditsassociatedInstancesfromtheSentryOneDatabase.
GroupsTargets can be organized into Target Groups beneath any Site node. A Target Group allowsyou to create logical groups of devices for alerting, organizational, and display purposes. TheAdd Target Group command can be found in the right-click context menu of any Site node.
TARGETGROUPCONDITIONSANDSETTINGSWithin the framework of the Alerting and Response System Hierarchy, Target Groups representan intermediate level between the Site and Target. This means that when a Condition or Settingis configured at a Target Group level it will automatically propagate down to itsassociated Targets, Instances, and objects.
6.2.3.3 Instances
ContainedbeneatheveryTargetnodeisitsassociatedInstancenodes.InstancesareidentifiedbytheirTarget/Instancename.ContainedbeneatheveryInstancenodeareitsassociatedobjects.
INSTANCESACTIONSANDSETTINGSWithintheframeworkoftheAlertingandResponseSystemHierarchy,Instancesrepresentthelevelaboveobjects.ThismeansthatwhenaConditionorSettingisconfiguredatanInstancelevelitwillautomaticallypropagatedowntoitsassociatedobjects.
WhenanInstancenodeisselectedintheNavigatorpanetheassociatedInstancelevelConditionsandSettingspanewillbeavailable.IfyoudonotseetheConditionsandSettingspanewhenanInstancenodeisselected,usetheViewMenutobringupthedesiredpane.ConditionsandSettingsconfiguredattheInstancelevelapplytoallObjectsbelongingtothatInstance.ThismeansthatwhenaConditionorSettingisconfiguredattheInstancelevelitwillautomaticallypropagatedowntoitsassociatedobjects.
ADDINGANINSTANCETOYOURENVIRONMENTYoucaneasilyaddadditionalmonitoredInstancestoyourSentryOneenvironment.Thisisaccomplishedbyright-clickingeithertheAllTargetsnode,aSitenode,aTargetGroupnode,oranexistingTargetNodeintheNavigatorpaneandusingtheAddInstancecommand.Youcanalso
SentryOne User Guide | 41
addanInstancethroughtheFilemenu.
IntheAddInstancedialogyoumaychoosethedesiredInstanceTypefromthedrop-downmenu(AnalysisServicesInstance,SQLServerInstance,WindowsInstance).Seealso:MonitorAdditionalInstances
6.2.4 SQLServerRegistrations
TheSQLServerRegistrationsNodemirrorstheSQLServerregistrationsofthenativeclienttoolsforthecurrentuserincludinganySSASregistrations,andCentralManagementServers.AnygroupsorserversthatareaddedordeletedthroughtheclienttoolswillbeautomaticallyaddedtotheSQLServerRegistrationsNodeintheSentryOneClient.
YoumaytoggledisplayingthelocalSQLServerRegistrationswiththeShowSQLServerRegistrationsbuttonlocateddirectlyabovetheNavigatorpane.ChangesyoumakeregardingtheWatchedstatus,ortoanyconfiguredSettings,Conditions,andActionsfromthecontextoftheSQLServerRegistrationsnodewillbemirroredintheAllTargetsnode.
ActivitiesnormallydoneinSQLServer'sclienttools,suchasadding,editing,ordeletingjobs,alerts,ormaintenanceplanscanbedoneusingtheSQLServerRegistrationsnodeintheSentryOneClient.ServerscanalsoberegisteredfromtheSentryOneClientthroughtheright-clickcontextmenuoftheLocal Server Groupsnode.
Asmentioned,SentryOnealsoincludessupportforaccessingregisteredserversmanagedbyaCentralManagementServer.JustlikeotherInstancesintheSQL Server Registrations group,changesyoumakeregardingtheWatchedstatus,ortoanyconfiguredSettings,Conditions,andActionsfromthecontextoftheCentral Management ServersgroupwillbemirroredintheAllTargetsnode.
6.2.5 ContactManagement
TheContactsNavigatornodeisusedtocreateandmaintainUsersandGroupswithinyourSentryOneenvironment.UsersandGroupsarecreatedforcoupleofdifferentreasons.Firstly,theycanbecreatedfornotificationpurposeswithintheSentryOneAlertingandResponseSystem.WhenyouconfigureaSendEmailorSendPageaction,anyuserorgroupwhichhasbeencreatedwillbeavailableforyoutochooseasatarget.
ThesecondreasonfordefiningUsersandGroupsistheabilitytoassignrightstothem.TheserightsareusedtorestricttheaccessofusersandgroupswithintheSentryOneClient.Formoreinformation,pleaseseetheSentryOneClientSecuritytopic.
VIEWINGNOTIFICATIONSBYUSERORGROUPFromtheContactsnodeitisalsopossibletoviewallnotificationsassignedtoaparticularuserorgroup.TodososelectanyuserorgroupnodeandopentheConditionspane(ViewMenu→General/Failsafe/AuditActions).Alistofallnotificationactionsassociatedwiththatuser/groupwillappear;fromhereyoucandisableorchangeanyoftheseconfiguredActions.
USERS
SentryOne User Guide | 42
ExpandtheUsersnodeintheNavigatorpanetolistanyconfiguredusers.
ADDOREDITAUSERToaddanewusersimplydouble-clickontheUsersnode.Toeditinformationaboutanexistinguser,doubleclickontheuser'snameintheNavigatortoopentheEdit Usertab.
DELETEORDISABLEAUSERYoumayalsodeleteordisableauserthroughtheright-clickcontextmenu.Whenyoudisableauser,theywillnolongerreceivenotificationsforanyactionswhichtheyaretheselectedtargetof.Ifthedisableduserispartofagroup,thatuserwillalsonolongerreceivenotificationswhenthatgroupisnotified.Disabledusersaregrayed-outintheNavigatorandalsohave(disabled)nexttotheirname.Toenableauserthathasbeendisabled,usetheright-clickcontextmenuoftheuserandselecttheEnableUsercommand.
Whenyoucreateanewuseroreditanexistinguserthefollowingfieldswillbeavailable.
USERFIELDSField Description
FirstName Thefirstnameoftheuser.Required.
LastName Thelastnameoftheuser.
EmailAddress Theemailaddressoftheuser.Required
PagerAddress Thepageraddressoftheuser.
EmailWindow
Theemailwindowfortheselecteduser.WhenyouassignanEmailWindowtoauserorgroupbesuretotakenoteoftheEmailWindowBehavioroptionasdetailedbelow.
FormoreinformationaboutschedulespleaseseetheSchedulesandWindowstopic.
EmailWindowBehavior
Performactionsthatoccurwithinthewindow-OnlyemailActionswhichoccurduringtheWindow'sactivetimeframewillbecarriedout.emailActionswhicharetriggeredoutsideoftheactivetimeframearesuppressed.
Don'tPerformactionsthatoccurwithinthewindow-EmailActionswhichoccurduringtheactivetimeframearefilteredorsuppressed.OnlyemailActionswhichoccuroutsideoftheWindow'sactivetimeframearecarriedout.
PagerWindow
Thepagerwindowfortheselecteduser.WhenyouassignaPagerWindowtoauserorgroupbesuretotakenoteofthePagerWindowBehavioroptionasdetailedbelow.
FormoreinformationaboutschedulespleaseseetheSchedulesandWindowstopic.
Performactionsthatoccurwithinthewindow-OnlypagerActionswhichoccurduringtheWindow'sactivetimeframewillbecarried
SentryOne User Guide | 43
PagerWindowBehavior
out.EmailActionswhicharetriggeredoutsideoftheactivetimeframearesuppressed.
Don'tPerformactionsthatoccurwithinthewindow-PagerActionswhichoccurduringtheactivetimeframearefilteredorsuppressed.OnlypagerActionswhichoccuroutsideoftheWindow'sactivetimeframearecarriedout.
Login
TheWindowsorSQLAuthenticationaccountfortheuser.YoucanassociateaSentryOneuserwithaWindowsorSQLAuthenticationaccountandrestrictaccesstospecificSites,TargetGroups,orInstanceseffectivelylimitingwhatthelogged-inusercanseewithintheClient.Formoreinformation,pleaseseetheSentryOneClientSecuritytopic.
Description Descriptivetextornotesfortheuser.
GroupsTheAvailablearealistsanygroupwithinyourSentryOneenterprise.
TheSelectedarealiststhosegroupswhichtheuserbelongsto.
GROUPSExpandtheGroupsnodeintheNavigatorpanetolistanyconfiguredgroups.
ADDOREDITAGROUPToaddanewgroupsimplydouble-clickontheGroupsnode.Toeditinformationaboutanexistinggroup,doubleclickonthegroupnameintheNavigatortoopentheEdit Grouptab.
ASSIGNUSER(S)TOAGROUPToassignuserstothegroup,choosefromtheavailableusersonthebottom-leftsideoftheview,andclicktheAddbutton.ClickontheSavebuttoninthetoptoolbartosaveagroup.
DELETEORDISABLEAGROUPYoumayalsodeleteordisableagroupthroughanygroup'sright-clickcontextmenu.Whenyoudisableagroup,thatgroupwillnolongerreceivenotificationsforanyactionswhichtheyaretheselectedtargetof.Disabledgroupsaregrayed-outintheNavigatorandarealsolistedasdisabled.Toenableagroupthathasbeendisabledusetheright-clickcontextmenuofthegroupandselecttheEnableGroupcommand.
GROUPFIELDSWhenyoucreateanewgrouporeditanexistinggroupthefollowingfieldswillbeavailable.
Field Description
GroupName Thenametoassigntoagroup.
AlertWindow
Thealertwindowfortheselectedgroup.WhenyouassignanAlertWindowtoagroupbesuretotakenoteoftheAlertWindowBehavioroptionasdetailedbelow.
Field Description
SentryOne User Guide | 44
FormoreinformationaboutschedulespleaseseetheSchedulesandWindowstopic.
AlertWindowBehavior
Performactionsthatoccurwithinthewindow-OnlyemailandpagerActionswhichoccurduringtheWindow'sactivetimeframewillbecarriedout.Actionswhicharetriggeredoutsideoftheactivetimeframearesuppressed.
Don'tPerformactionthatoccurwithinthewindow-Actionswhichoccurduringtheactivetimeframearefilteredorsuppressed.OnlyemailandpagerActionswhichoccuroutsideoftheWindow'sactivetimeframearecarriedout.
Login
TheWindowsActiveDirectoryaccountforthegroup.YoucanassociateaSentryOnegroupwithaWindowsActiveDirectoryaccountandrestrictaccesstospecificSites,TargetGroups,orInstanceseffectivelylimitingwhatthelogged-inusercanseewithintheClient.Formoreinformation,pleaseseetheSentryOneClientSecuritytopic.
Description Descriptivetextornotesfortheuser.
UsersTheAvailablearealistsuserswithinyourSentryOneenterprise.TheSelectedarealistanyusersthatbelongtothegroup.
Field Description
6.2.6 SchedulesandWindows
SentryOneemploysextensiveschedulingcapabilitiesthroughitsSchedulesandWindowsfeatures.SchedulesandWindowscanbemanagedthroughtheirrespectivenodesfoundintheNavigatorpane.
ScheduleshavethefollowingapplicationswithinSentryOne:
FragmentationManagerOperations
WindowshavethefollowingapplicationswithinSentryOne:
MaintenanceWindowsEmailandPagerWindowsforUsersandGroupsRulesetWindowsforConfiguredActions
SCHEDULESSentryOneallowsyoutocreateSchedulesthatcanbeappliedinthefollowingplaces:
SentryOne User Guide | 45
Scenario Description
FragmentationManagerOperations
WhenyouenableFragmentationManagerinyourSentryOneenvironmentyouwillselectascheduletoperformFragmentationManageroperations.ThisscheduleisinitiallyspecifiedintheFragmentationManagerwizard.AfteryouenableFragmentationMangerforanInstanceyoumayaccesstheappliedschedulethroughtheIndex Defragmentation SettingsfoundintheSettingsPane(View->Settings).
IndexDefragmentationSettings,includingtheappliedSchedule,canbeconfiguredatthefollowinglevels:AllTargets(Global),Site,TargetGroup,Target,Instance,database,table,andindividualindex.
SeeAlso:FragmentationManager
WINDOWSSentryOneallowsyoutocreateWindowsthatcanbeappliedinthefollowingplaces:
Scenario Description
MaintenanceWindows
MaintenanceWindowsallowatimeframetobespecifiedwhiledailymaintenanceactivitiestakeplace.WhenaFailsafeConditionoccursduringaMaintenanceWindowonlytheassociatedlogactionswillbecompleted,anyconfiguredsendemailactionswillbesuppressed.
ThereareseveraloptionsforconfiguringmaintenancewindowswithinSentryOne,includingmaintenancewindowsspecifictoTargets,Instances,andtheSentryOneDatabase.FormoreinformationpleaseseetheEliminatingFailsafealertsusingMaintenanceWindowsKBarticle.
EmailandPagerWindowscanbeassignedtoauserorgroup.Windowscontrolthetimeframeofwhenalertsaresenttotheuserorgroup.WhenyouassignanEmailorPagerWindowtoauserorgroupyouhavetheoptiontochangetheWindowBehaviortooneofthefollowing:
WindowBehavior
Performactionsthatoccurwithinthewindow-OnlyemailandpagerActionswhichoccurduringtheWindow'sactivetimeframewillbecarriedout.EmailandpagerActionswhicharetriggeredoutsideoftheactivetimeframearesuppressed.
SentryOne User Guide | 46
EmailandPagerWindowsforUsersandGroups
Don'tPerformactionsthatoccurwithinthewindow-EmailandpagerActionswhichoccurduringtheactivetimeframearefilteredorsuppressed.OnlyemailandpagerActionswhichoccuroutsideoftheWindow'sactivetimeframearecarriedout.
ToapplyanEmailorPagerWindowtoauserorgroup,firstdouble-clicktheuserorgroupintheNavigatorpane.ThiswillopenanEdit User/Group tab.UsetheEmailWindoworPagerWindowdrop-downlistboxtochoosethedesiredWindow.UsetheEmailWindowBehaviororPagerWindowBehaviordrop-downlisttochoosethedesiredbehavior.
Seealso:ContactManagement.
RulesetWindowsforconfiguredActions
WindowsmaybeappliedtoconfiguredActionswhichwillcontrolthetimeframeofwhenthatActioncantakeplace.WhenyouassignaWindowtoaconfiguredActionyouhavetheoptiontochangetheWindowBehaviortooneofthefollowing:
WindowBehavior
Performactionsthatoccurwithinthewindow-OnlyemailandpagerActionswhichoccurduringtheWindow'sactivetimeframewillbecarriedout.EmailandpagerActionswhicharetriggeredoutsideoftheactivetimeframearesuppressed.
Don'tPerformactionsthatoccurwithinthewindow-EmailandpagerActionswhichoccurduringtheactivetimeframearefilteredorsuppressed.OnlyemailandpagerActionswhichoccuroutsideoftheWindow'sactivetimeframearecarriedout.
ToapplyaWindowtoaconfiguredaction,firstselecttheactionintheConditions pane.NextopentheRuleset tabfortheselectedaction.UsetheWindowdrop-downlisttoselectyourdesiredWindow.YoumayalsochoosetoeditanexistingwindowwiththeEditbutton,orcreateanewwindowwiththeNewbutton.UsetheWindowBehaviororWindowBehaviordrop-downlisttochoosethedesiredbehavior.
SeeAlso:AlertingandResponseSystem
CREATINGASCHEDULEORWINDOWTocreateanewScheduleorWindowfirstexpandtheSchedulesandWindowsnodeintheNavigatorpane.Next,double-clickeithertheSchedulesortheWindowsnodetoopenthe
Scenario Description
SentryOne User Guide | 47
respectivedialogscreen.YoumayeditordeleteanexistingScheduleorWindowbyselectingit,andthenchoosingtheEditorDeletecommand.TocreateanewScheduleorWindowselecttheNewcommand.
Section Description
Name Thisisthenamewhichwillbeappliedtothescheduleorwindow.
ScheduleType
Recurring-Arecurringscheduleorwindowwillberepeatedaccordingtothefrequencyanddurationyouchoose.
OneTime-Aonetimescheduleorwindowwilltakeplaceonlyontheoccurrencedateyouspecify.
Compound-Acompoundscheduleorwindowcanbecreatedwhichcombinespreviouslycreatedschedules.
WindowDuration
SpecifythedurationorthelengthoftimethattheWindowbeactive.
Note:WindowDurationappliesonlytoWindowsandisN/AforSchedules.
One-timeoccurrence
Selectthetimeyouwouldliketheonetimeoccurrenceofthescheduleorwindowtotakeplace.
Note:ThisoptionisonlyapplicableforScheduleType:One Time.
Frequency
TheFrequencyofthescheduleorwindowcanbesettoeitherDaily,Weekly,orMonthly.Additionalfrequencyoptionswillbeavailabledependingontheoccurrencetypeyouchoose.
DailyFrequency
UsetheDailyFrequencyoptionstoselectthespecifictime(s)duringthedaythescheduleorwindowwilloccur.
Duration UsetheDurationsectiontospecifyaStartDateandEndDate.
Summary TheSummarydescriptionwillauto-fillaccordingtotheoptionsyouchoose.Youmayaddtothesummary,orchangethetextasdesired.
6.2.7 ObjectGroups
ObjectGroupsareusefulwhenyouneedtoquicklyapplylikepoliciestoasetofobjectsthatdonotexistwithinthesamehierarchicalgroupinyourSentryOneenvironment.Theseobjectscouldbedispersedthroughoutyourenvironment,indifferentsites,groups,orsubtrees,butiftheyshareasimilarsetofcharacteristics,theymaybeidealcandidatesforasimilarsetofpolicies.
Takeforexample,allofthetransactionlogbackupjobswithinyourenvironment.Youmaywishtosuppressruntimethresholdnotificationsgeneratedwhenthesejobsrun,bydisablingthesend
SentryOne User Guide | 48
emailAction.ObjectGroupsallowyoutodothiswithoutaffectinganyotherAgentJobs.Inthepast,thiswouldinvolveyouhavingtogoandtoucheachofthetransactionlogbackupjob'ssettingsindividually.ObjectGroupsallowyoutoavoidthetediousprocess,savingyoutime,asyoucanquicklylocateobjectsbynameorcategory,addthemtoagroup,andapplyasetofpolicies.
AsObjectGroupsexistoutsideofthenormalSentryOneHierarchy,aConditionorSettingconfiguredforanObjectGroupwillbeappliedlast,afteranyinheritedorexplicitlydefinedConditionorSetting.Inthisway,ObjectGroupConditionsandSettingshavethefinalsaywithinyourenvironment.
Asmentionedearlier,typicalusesincludedisablingruntimethresholdalertsforalltransactionlogbackupjobs,andapplyingpoliciestoQAserversthatmayexistwithinseveralsitesofyourenvironment.WhenyoucreateanObjectGroupyouwillchoosehowconfiguredConditionsandSettingswillbeappliedinthegroup.YoucancreateanObjectGroupinwhichconfiguredConditionsandSettingsapplystrictlytothegroupmembers.Alternatively,youmaycreateanObjectGroupinwhichconfiguredConditionsandSettingsapplytothegroupmembersandtheirchildren.SeetheCreatingaNewGroupsectionbelowformoreinformation.
EachObjectGroupyoucreatealsohasanassociatedEvaluation Order.ThisEvaluation OrderisspecifictojustthesetofObjectGroupsinyourenvironment.ThisisvaluablewhenyouhaveanobjectwhichbelongstomultipleObjectGroupswithadivergentsetofpolicies.TheEvaluationOrderallowsyoutocontrolwhichgroup'sconfiguredConditionsandSettingswillbeapplied.AconfiguredSettingorConditionfromtheObjectGroupwiththehighestEvaluation Orderwillbeappliedlast,andthereforewillbetheeffectiveSettingorCondition.
WhenyouaddnewobjectstoanObjectGroup,anySettingwhichisapplicabletothatObjecttypewillbeconfigurableintheSettingspane.Bydefault,eachobjectinanObjectGroupwillstillreceiveitsbasesetofinheritedSettingsfromitsparentobjectsintheSentryOneHierarchy.IfyouwouldliketooverridetheseSettings,youmustfirstdefineaSettingwithintheObjectGroupitself.TodothisyouwillneedtochangetheDefinedSettingtotrue.AfteryoudefineaSettingforanObjectGroup,thatSettingwillbereflectedinanyapplicableobjectswhichbelongtothatgroup.
JustlikeSettings,Condition/Actioncombinationsbecomeavailableasappropriatewhenobjectsareaddedtoagroup.WithanyObjectGroupselectedyoucanconfigureConditionsthroughtheConditionspane,justasyounormallywould.SeetheConfiguringConditionsandSettingsforanObjectGroupsectionbelowformoreinformation.
SETTINGUPOBJECTGROUPSTocreateanewObjectGroupfirstdouble-clicktheObject GroupsnodeintheNavigatorpane.ThiswillopentheObject Groups Editorwindow.TheGroupssectionoftheeditorwindowcontainsanypreviouslyconfiguredgroupsinyourenvironment.TheGroup MemberssectionoftheeditorwindowallowsyoutoviewindividualmembersofanyselectedObjectGroup.
CREATINGANEWGROUPTocreateanewObjectGroupusetheAddcommandintheGroupssectionoftheeditorwindow.ThiswillopentheAdd Groupdialogwindow.Chooseanameandadescriptionforthegroup.AlsotakenoteoftheApplies Todrop-downbox.Seebelowforreference
AppliesTo:
SentryOne User Guide | 49
Selectedgroupmembersandtheirchildren
AnyConditionsorSettingsyouconfigureforthegroupwillalsoapplytothechildrenofthegroupmembers.Thismakesthegroup'sSettingsandConditionsinheritable.
Selectedgroupmembersonly
AnyConditionsorSettingyouconfigureforthegroupwillonlyapplytothespecificmembersoftheGroupandwillhavenoeffectontheirchildren.Thismakesthegroup'sSettingsandConditionsnoninheritable.
IfyouarecreatinganObjectGrouptosetpoliciesforalloftheQAserversinyourenvironment,youwillwanttochoosetheSelected group members and their childrenoption,asthiswouldgiveyouaccesstoapplicableSettingsandConditionsfromtheInstanceleveldowntotheobjectlevel.
IfyouarecreatinganObjectGrouptosetpoliciesforjustafinitesetofobjects,anddonotwishtoimpactorhaveaccesstochildrenoftheobject,usetheSelected group members onlyoption.Giventhetransactionlogbackupjobusecasediscussedearlier,itwouldnotactuallymatterwhichAppliesTooptionyouchose,astheAgentjobobjectisaleafnodeintheSentryOneHierarchy.
ADDINGOBJECTGROUPMEMBERSToaddnewmemberstoagroup,firstselectagroupintheGroups sectionoftheeditorwindow.Next,intheGroup Members sectionoftheeditorwindowusetheAddcommand.
IntheSelect Group Membersdialoguescreen,firstchoosetheobjecttypeofthegroupmemberyouwouldliketoaddfromthetreeview.Next,usetheSearchcommandtoviewobjectsofthattypeinyourmonitoredenvironment.SelectanobjectandusetheOKcommandtoaddittotheGroup.YoumayaddmultipleobjectsbyusingCtrlorShiftselect.
CONFIGURINGCONDITIONSANDSETTINGSFORANOBJECTGROUPOnceyouhaveaddedyourdesiredobjectstothegroup,youcanbeginconfiguringtheConditionsandSettingsforthegroup.YouconfigureConditionsandSettingsjustlikeyounormallywould,throughtheConditionsandSettingspane.IfyoudonotseetheConditionsandSettingspaneusetheViewmenutoopenit.
ToaddanConditiontoaGroup,firstselecttheObjectGroup.ThiscanbedoneineithertheNavigatorpaneorthroughtheObject GroupsEditorscreen.FromtheConditionspane,usetheAddcommandtoopentheActionsSelectorwindow.ChooseyourdesiredCondition/ActioncombinationsandthenselecttheOKcommand.AnyConditionsthatareapplicabletotheobjectswithinyourgroupwillbeavailableforyoutoconfigure.
YoumayalsoconfigureSettingsfortheObjectGroupthroughtheSettingspane.AnySettingsthatareapplicabletotheobjectsinyourgroupwillbeavailableforyoutoconfigure.Asdiscussedearlier,bydefaulteachobjectinanObjectGroupwillstillreceiveitsbasesetofinheritedSettingsfromitssuperiorparentobjectsintheSentryOneHierarchy.IfyouwouldliketooverridetheseSettings,youmustfirstdefineaSettingwithintheObjectGroup.TodothisyouwillneedtochangetheDefinedflagtotrueintheSettingspane.AfteryoudefineaSettingforanObjectGroup,thatSettingwillbereflectedinanyapplicableobjectswhichbelongtothatgroup.
SentryOne User Guide | 50
IfyouareeverunsureofwhereanobjectisreceivingitsinheritedSettingsfromyoucaneasilycheck.TheActiveSettingsListReportwilllistthisinformationforeachSettingsintheObjectNamecolumn.AccessthisreportfromtheReportsMenu(Reports->General->ActiveSettingsList).
Alternatively,youcanviewthisinformationdirectlyattheindividualobjectlevel.FirstselectthedesiredobjectintheNavigatorandopentheSettingspane.TheInherentFromParentsectionofeachsettinggroupwillcontainthenameofthesuperiorobjectwhichispassingdownthatgroupofSettings.Inthecasewheretheobject'sSettinghavebeendefinedwithanObjectGroupitwilllistthatObjectGroupastheparent.
6.2.8 MonitoringService
TheSentryOneMonitoringService,aWindowsservice,collectseventhistory,status,andperformanceinformation,sendsnotifications,andperformsvariousothertasksrelatedtoeventmanagementforeach“watched”Instance.ThevariouseventmetadataandhistoryinformationcollectedbytheSentryOneMonitoringServiceisstoredinaSQLServerdatabase.ThenumberofInstancesthatcanbewatchedinyourenvironmentiscontrolledbythenumberoflicensesyouhavepurchased.
SENTRYONECONFIGURATIONNODE
MonitoringServiceSettingsSMTPConfiguration
SiteConfigurationInventoryViewMonitoringServiceLoadBalancingandFaultToleranceActionsLogSystemStatusServiceConfigurationUtilityMonitoringServiceLogonAccount
6.2.8.1 MonitoringServiceSettings
TheSentryOneMonitoringServiceSettingsareglobalinnature,applyingtotheentireSentryOneinstallation.TheycontrolthebehaviorandfunctionofallinstalledSentryOneMonitoringServicesconnectedtotheactiveSentryOnedatabase.TheSentryOneMonitoringServiceisaWindowsserviceinstalledononeormoreserversinyourenterprise.AllsettingsarestoredintheSentryOnedatabase.TheSentryOneMonitoringServiceSettingscanbeaccessedthroughtheSettingsnodefoundintheMonitoringServicegroupoftheNavigatorpane.BydefaulttheMonitoringService
SentryOne User Guide | 51
SettingswillopentotheSMTPConfigurationtab.
MONITORINGSERVICESETTINGSANDDATARETENTIONTherearealsoMonitoringServiceSettingswhichcontroltheretentionofcertaintypesofdatawithintheSentryOneDatabase.
TheretentionofEventCalendardata(EventHistorydata)iscontrolledwiththeEventHistoryMonitor"PurgeHistoryOlderThan"setting.Thedefaultvalueforthissettingis30days.TheretentionofdatadisplayedonthePerformanceAnalysisTopSQL,BlockingSQL,andDeadlockstabs(PerformanceMonitordata)iscontrolledwiththePerformanceMonitor"PurgeHistoryOlderThan"setting.ThissettingalsoappliestoEventCalendarGeneralPerformanceMonitoring(on-linedocumentation)data.Thedefaultvalueforthissettingis15days.
Note:TopSQL,BlockingSQL,andDeadlockdatawillalsobeconvertedtothenativeEventCalendarformatandthenretainedaccordingtotheEventHistoryMonitor"PurgeHistoryOlderThan"setting.
AllotherPerformanceData,includingthedatawhichisdisplayedonthePerformanceAnalysisDashboard,isnotaffectedbytheMonitoringServiceSettings.Instead,thisdataissubjecttoahighperformancestorageschemeandinternalrollupstructureasoutlinedintheDashboardResolutions/RetentiontopicandtheDataCapacityPlanningarticle.
SMTPCONFIGURATIONForinformationaboutconfiguringanSMTPserverpleaseseetheSMTPConfigurationtopic.
EVENTMONITORThistabisusedtoconfiguresettingsfortheprocessresponsibleforpollingwatchedInstancesforactiveeventstatusinformation.
Setting Description
PollingInterval
ControlshowoftentheSentryOneMonitoringServicewillpolleachwatchedInstanceforeventstatusinformation.Thepollingoperationsusedarelightweight,however,thevaluecanbeincreasedtoreducenetworkactivityassociatedwiththeSentryOneMonitoringService.ThedefaultPollingIntervalis15Seconds.
ErrorResumeInterval
ControlshowlongtheSentryOneMonitoringServiceshouldwaittorecoverfromanerrororexceptionintheeventmonitor,whenattemptingtoobtaineventstatusinformationfromanInstance.ThedefaultErrorResumeIntervalis1Minute.
Trigger"RunMissed"ConditionUsethecheck-boxtospecifywhetherornottoexecutetheRunMissedConditionwhentheInstanceisoffline.
MinimumBlockDurationRequiredtoTrigger"SQLServerAgentJob:BlockCondition"
UsedtospecifytheminimumtimeaSQLAgentJobmustbepartofablockingchainbeforetriggeringtheSQLServerAgentJob:BlockCondition.
EVENTHISTORYMONITOR
SentryOne User Guide | 52
ThistabisusedtoconfiguresettingsfortheprocessresponsibleforthecollectionofeventhistoryinformationfromwatchedInstances.
Setting Description
PollingInterval ControlshowoftentheSentryOneMonitoringServicewillpolleachwatchedInstanceforeventhistoryinformation.
ErrorResumeInterval TheErrorResumeIntervalishowlongtheSentryOneMonitoringServiceshouldwaittorecoverfromanerrororexceptionintheeventmonitorwhenattemptingtoobtaineventstatusinformationfromanInstance.
PurgeHistoryOlderThan
ControlstheretentionofEventCalendardata(EventHistorydata).Thedefaultvalueforthissettingis30days.
Note:RetentionofEventCalendarGeneralPerformanceMonitoring(on-linedocumentation)dataiscontrolledwiththePerformanceMonitor"PurgeHistoryOlderThan"setting.
MaxThreadPoolSize Thisisanadvancedsettingthatmayimproveperformanceinlarge(100+watchedInstances)environments.
EventChainsareOnlyAffectedbyHistoryWithin
Thissettingtellschaininghowfarbackinthehistorytolookwhendeterminingwhetherhistoryentriesshouldaffectchainstatus.Thissettingisusedasafailsafemeasureifforsomereasonyouwereunabletosynchronizewithaserverforaspecifiedperiodoftime,whenevertheservercomesbackonlineandSentryOneisabletore-synchronizehistoryinformation,anyhistorythatisolderthanthetimespecifiedbythissettingwillnotbeusedtoimpactchainexecutionstatus.Theminimumvalueforthissettingis10minutes.
Note:ItisrecommendedthatyoucontactSentryOnesupportbeforechangingthedefaultvalue.
MESSAGEPROCESSORThesesettingscontroltheprocessthatpollsthemessagequeueandprocessesmessages.Examplesofprocessesincludeloggingtodiskortheeventlog,orsendinganemailnotification.
Setting Description
PollingInterval
PollingIntervalcontrolshowoftentheSentryOneServer'sinternalmessagequeueischeckedandmessagesareprocessed.Increasingthissettingwilleffectivelylengthenthetimebetweenwhenaconditionismetandanyassociatedactionsaretriggered.AdjustingthesettingupordownwillaffectoverheadontheSentryOneMonitoringServiceonly,andwillnotaffectnetworkormonitoringoverheadforwatchedInstances.
ErrorResumeInterval TheErrorResumeIntervalishowlongtheSentryOneMonitoringServiceshouldwaittorecoverfromanerrororexceptioninthemessageprocessor.
DoNotFireActionsforMessagesOlderThan
Ifmessageswereunabletobecollectedforsometimethissettingwillkeepactionsfrombeingfiredfortheseoldermessages.
PurgeActionLogHistoryOlderThan
ThissettingdetermineshowmanydaysworthofActionLoginformationisstored.
Thesesettingsdeterminewhetherglobalmessagethrottlingisenabledand,ifso,howmanyemailmessagescanbesentwithintheprovidedamountoftimebeforethemessagethrottlingactivates.Whenmessagethrottlingactivatesthe"MessageProcessor:MessageActionThrottled"Conditionisfired.
SentryOne User Guide | 53
GlobalMessageThrottling(Don'tsendmorethanXemailswithinXhours.
The"MessageProcessor:MessageActionThrottled"conditionisaFailsafecondition;thereforebydefaultanyuseraddedduringtheSetupWizardwillbenotifiedwhenthisConditionismet.Ifyoudisablealertingforthe"MessageProcessor:MessageActionThrottled"Condition,MessageThrottlingwillstillremainineffect.
Note:The"MessageProcessor:MessageActionThrottled"Conditionissubjecttoglobalmessagethrottlingitself.
PERFORMANCEMONITORThesesettingscontroltheprocessresponsibleformonitoringWindowsperformancecountersthatarelinkedtoeventobjects.The"PurgeHistoryOlderThan"settingalsocontrolsretentionofPerformanceAnalysisTopSQL,BlockingSQL,andDeadlockdata.
Setting Description
PollingIntervalPollingIntervalcontrolshowoftentheSentryOneMonitoringServicewillsampleanyperformancecounterslinkedtoanevent.Thepollingisnotcontinuous,butisstartedandstoppedautomaticallybaseduponaneventobject'sschedules.
ErrorResumeInterval TheErrorResumeIntervalishowlongtheSentryOneMonitoringServiceshouldwaittorecoverfromanerrororexceptionintheperformancemonitor.
PurgeHistoryOlderThan
SpecifieshowlongPerformanceAnalysisTopSQL,BlockingSQL,andDeadlockdataisretainedintheSentryOneDatabase.ThissettingalsoappliestoEventCalendarGeneralPerformanceMonitoring(on-linedocumentation)data.
Note:AllotherPerformanceData,includingthedatawhichisdisplayedonthePerformanceAnalysisDashboard,isnotaffectedbytheMonitoringServiceSettings.Instead,thisdataissubjecttoahighperformancestorageschemeandinternalrollupstructureasoutlinedintheDashboardResolutions/RetentiontopicandtheDataCapacityPlanningarticle.
Note:TopSQL,BlockingSQL,andDeadlockdatawillalsobeconvertedtothenativeEventCalendarformatandthenretainedaccordingtotheEventHistoryMonitor"PurgeHistoryOlderThan"setting.
TextDataMaximumLengthChangethemaximumlengthoftextdatacapturedforTopSQLandTopCommandevents.
TextData(Normalized)MaximumLength
ChangethemaximumlengthofnormalizedtextdatacapturedforTopSQLandTopCommandevents.
NormalizationEngine Withthereleaseofversion8.2,therehavebeenimprovementsmadetotheNormalizationEngine.UsersupgradingfromapriorbuildwillneedtoselecttheAdvancedoptiontoseetheenhancements.
MAINTENANCEWINDOW
Setting Description
SentryOne User Guide | 54
MaintenancewindowsettingsallowyoutospecifyatimeframewhereFailsafeNotificationswillbedisabledwhiledailymaintenanceactivitytakesplace.ThiswillpreventexcessivenotificationsthatmayoccurifawatchedInstanceistemporarilyinaccessibleduringtheseactivities.LogActionswillstillbeenabledduringthiswindow,butanyExecuteorSendActionswillnotfireinsidetheMaintenanceWindow.TheMaintenanceWindowspecifiedinthisview,undertheSentryOneMonitoringServicenode,appliestoactivityontheSentryOneDatabaseitself.TospecifyaMaintenanceWindowforwatchedInstances/Target,selecttheSettingstabfromtheSettingsPaneforthatInstance/Target.
SNMPCONFIGURATIONSNMPSettings
Setting Description
Hostname
ThisvaluedetermineswheretheSNMPtrapwillbesent.Thedefaultsetting(BROADCAST)willsendthetraptoallmanagers.IndividualmanagerscanbesentthetrapsusingtheindividualhostnameorIPaddress.
Note:ManagersincludedintheBROADCASTgroupandwhoarealsolistedindividuallywillreceivetwomessagesforeachoccurrence.
Port Theportusedfortransmissionofthetraps(Default162).
SNMPVersion TheversionofSNMPtobeused(1,2Cor3)
Enabled Thischeckboxdetermineswhetherornotthetrapisenabled.
SNMPv1/2CConfiguration
CommunityEnterthecommunity.
SNMPv3Configuration
Setting Description
EngineIDEntertheEngineID.
NOTE:YoucanalsousetheGeneratebuttontogetthisvalue.
Username Entertheusername
PrivacyAlgorithm Selecttheappropriateprivacyalgorithm
PrivacyPassword Entertheprivacypassword
HashAlgorithm Selecttheappropriatehashalgorithm(MD5,SHA,orNone).
HashPassword Enterthepassword.
6.2.8.1.1 SMTPConfiguration
TheSMTPServerconfigurationoptionscanbeaccessedthroughtheMonitoringServiceSettings(Navigatorpane->MonitoringServicenode->Settings->SMTPConfigtab).
SentryOne User Guide | 55
Usethedrop-downlistboxtochooseapreviouslyconfiguredSMTPserver,orusethe(...)commandtoopentheSelect anSMTP Serverdialog,andconfigureanewSMTPserver.
TheselectedSMTPserverwillbethegloballydefinedSMTPserver,andwillbeusedforallnotificationpurposesunlessitisoverriddenattheSitelevel.Formoreinformationaboutthis,pleaseseetheConfiguringaSiteLevelSMTPServersectionbelow.
ADDANEWSMTPSERVERFromtheSMTPConfigtab,usethe(...)commandtoopentheSelect anSMTP Serverdialog.ToaddanewSMTPserver,firstusetheNewcommandtoopentheSMTP Server Editordialogbox.Seethetablebelowformoreinformationabouttheavailableoptions.OnceyouhaveenteredtherequiredinformationusetheTestcommandtosendatestemail.
Note:
TheSMTPSecuritySettingsareoptional,andarenotrequiredinmostenvironments.
ForthemostaccurateSMTPtest,youshoulduseaSentryOneClientinstalledontheSentryOneMonitoringServicemachinetosendatestmessage.Ifyouuseadifferentcomputer,i.e.,yourlocalworkstation,theresultsmaybedifferent.Forexample,yourSMTPservermayallowrelayfromyourworkstation'ssubnet,butnotfromtheSentryOneServer'ssubnet.Inthiscasethetestfromyourworkstationwouldsucceed;however,theSentryOneMonitoringServicewouldbeunabletodelivernotifications.
SMTPConfigurationOptions
SMTPSettings Description
SMTPServer EntertheIPAddressortheDomainNameoftheSMTPServer.Whenusinglocalhost,thiswillbethelocalSMTPserveronthemachinewheretheSentryOneMonitoringServiceisinstalled.
FromAddress SpecifytheFromAddressforEmailnotifications
SMTPSecurity(Optional)
Username EntertheusernameusedtoauthenticatewiththeSMTPServer.
Password EnterthepasswordusedtoauthenticatewiththeSMTPServer.
EnableSSL SpecifyifyourSMTPserverusesaSecureSocketLayer(SSL)protocol.
UseCustomPort SelecttheoutgoingportfortheSMTPServer.
CONFIGURINGASITELEVELSMTPSERVERSentryOneallowsyoutoconfiguremultipleSMTPserversforthedifferentSiteswithinyourenvironment.ThisallowsyoutospecifyanSMTPserver,oranSMTPServergroupwhichislocalforeachSite,simplifyingpermissions,andreducingtrafficoverWANs.
YoumayconfigureSitelevelSMTPserversthroughtheSiteSettingsfoundintheSettingspane.TodothisfirstselectyourdesiredSiteintheNavigatorpane.NextopentheSettingspane(Viewmenu->Settings).IntheSettingspanechooseSiteSettingsfromthetopdrop-downlist.ChangetheInherit From ParentSettingtofalse.TheSMTP Server Generalsettingwilllistthe
SentryOne User Guide | 56
currentSMTPserver.Next,clickonthecurrentSMTPserverandselectthe(...)commandtoopentheSelect an SMTP Serverdialog.ChooseyourdesiredSMTPserverandselecttheOKcommandtospecifytheSMTPserverforyourSite.
SMTPSERVERGROUPSInordertoprovidefailovercapabilities,SentryOneprovidesyouwiththeabilitytocreateSMTPServergroups.TocreateanSMTPServergroupfirstaddyourSMTPserverstoyourSentryOneenvironment,asoutlinedaboveintheaddanewSMTPServersection.
NextyouwillneedtocreatetheSMTPServergroup.FromtheSelect an SMTP Serverdialogbox,usetheNewcommandtoopentheSMTP Server Editordialogbox.UsetheTypedrop-downlistandchooseServerGroup.GivetheServergroupanameandaddyourdesiredserverswiththeAddcommand.
SMTPSERVERGROUPFAILOVERPROCESSTheSMTPserversinagroupwillfailoverinsequence,accordingtotheorderinwhichtheyarelistedintheSMTP Server Editor dialogbox.Youmaychangethisorderbyusingthearrowbuttonslocatedatthebottomofthedialogbox.
AnSMTPserverfails
WhenanSMTPserverfails,theMonitoringServicewillattempttousethenextSMTPserverinsequencetosendthemessage.IftheMonitoringServiceissuccessfulinusingthisSMTPserver,thissameSMTPServerwillbeusedthenexttimetheMonitoringServiceneedstosendamessage.
Forexample,assumeyouhaveaSendEmailActionconfiguredfortheSQLServerAgentJob:FailureCondition,andalsoyouhavethefollowingSMTPserversdefinedsequentiallyinyourgroup:
1.SMTP_A
2.SMTP_B
3.SMTP_C
4.SMTP_D
WhenthefailureConditionisdetectedtheMonitoringServicewillattempttocompletetheSendEmailActionusingSMTP_A,whichisthefirstserverinthegroup.IftheMonitoringServiceisunabletosendthemessagethroughSMTP_A,itwilltrySMTP_B.Ifitissuccessful,theMonitoringServicewilluseSMTP_BthenexttimeitneedstocompleteaSendEmailAction.
EverySMTPserverfails
IntheeventthateverySMTPserverinthegroupisunavailablewhentheMonitoringServiceattemptstocompleteaSendEmailAction,aMonitoringService:ActionFailedConditionwillbetriggered.GivenourexampleSMTPgroupabove,thisprocesswouldworkasfollows:
IftheMonitoringServiceisunabletosendtheemailmessagethroughSMTP_A,itwilltrySMTP_B,thenSMTP_C,andfinallySMTP_D.IftheMonitoringServicecompletesacyclethrougheachSMTPserverintheSMTPServergroup,andisstillunabletocompletetheSendEmailAction,aMonitoringServiceAction:FailedConditionwillbetriggered.
ResettingtheFailoverprocess
ChangesmadetoanSMTPServergroup,includingchangestotheevaluationorder,oradditionsanddeletionsofSMTPserverswilleffectivelyresetthefailoverprocess.Oncethefailoverprocess
SentryOne User Guide | 57
hasbeenreset,theMonitoringServicewillattempttoprocessSendEmailActionsstartingwiththefirstSMTPserverdefinedforthegroup.
6.2.8.2 SiteConfiguration
SitesarelogicalgroupingsofTargets,Instances,SMTPServers,andMonitoringServiceswithinyourSentryOneenvironment.EverySentryOneenvironmenthasatleastoneSiteconfiguredbydefault;youcanseethisSiterepresentedintheNavigatorpane,astheDefaultSite.WhilenoteveryenvironmentwillhaveaneedformultipleSites,theyofferanumberofadvantagesforenvironmentswhichcontaingeographicallysparseassets,existinginmultipledomains.SeetheSentryOneEnterpriseArchitecture('EnterpriseArchitecture'intheon-linedocumentation)topicforagraphicalrepresentationofthisidea.ThefollowingsectioncontainsgeneralinformationaboutSites,ifyoupreferyoucanjumprighttothewalkthroughsection.
SITELEVELMONITORINGSERVICESTheSentryOneMonitoringServiceisaWindowsService,whichisresponsibleforcollectingeventhistory,eventstatus,andperformancerelatedinformationaboutyourservers,andstoringthatinformationintheSentryOneDatabase.
SentryOneMonitoringServicescanbeassignedtospecificSiteswithinyourenvironment.OnceyouplaceaMonitoringServicewithinaSiteitbecomesexclusivelyresponsibleforgatheringinformationaboutthosewatchedTargetsandInstancescontainedwithinthatsameSite.
Asyoucanimagine,havingaMonitoringServicewithinthesameLANasthoseserversitismonitoringsignificantlyreducesWANtraffic,astheMonitoringServiceisabletoconsumedatalocallyandwritebacktotheSentryOneDatabaseasneeded.
SITELEVELSMTPSERVERSAsdiscussedabove,onceaMonitoringServiceisassignedtoaSitethatMonitoringServicebecomesresponsiblefortheSiteinanumberofways.OneoftheresponsibilitiesoftheMonitoringServiceistoalertyouabouteventswhicharehappeningwithinyourenvironment.OneofthewaysitdoesthisisbycommunicatingwithyourSMTPservers,whensendingemailalerts.IfyouhaveaSiteinNewYorkandanotherinChicago,itdoesn’tmakesensetouseNewYork’sSMTPservertoalertyouaboutConditionshappeninginChicago.
SitelevelSMTPServersandSMTPServerGroupssolvethisproblem.WhentheMonitoringServicedetectsaConditionwhichyouhaveconfiguredtobenotifiedabout,itwillpackagethatalertandthenmarshalthatinformationtothelocalSMTPserver,whichyouhaveassignedtotheSite.ThisallhappenswithinthelocalityoftheSite’sLAN,againavoidinglongdistancecommunicationoveraWAN,andsignificantlyreducingnetworktraffic.
SitelevelSMTPserverscanbeconfiguredthroughtheSiteSettings.Formoreinformationaboutthis,seetheSMTPConfigurationtopic.
SITELEVELPOLICIESSentryOneallowsyoutosetpoliciesforyourmonitoredenvironmentbyconfiguringSettingsandConditions/Actions.EachoftheseSettingsandConditionshasahierarchicalconfiguration.ThebasicideaisthatyousetglobalpoliciesandthenreconfigurethemasneededatthedifferentlevelsavailablewithintheSentryOneHierarchy.Asyoumayhaveguessed,SitesrepresentalevelwithintheSentryOneHierarchy.Thisoffersanumberofpossibilities,asyoucanfinetuneyourSettingsandConditions/ActionswithjusttheSitelevelenvironmentinmind.
SentryOne User Guide | 58
CONFIGUREANEWSITEWALKTHROUGHTaketheexampleofacompanywithofficesinbothAtlantaandLouisville,withfivemonitoredserversateachlocation.UsingseparateSitesforAtlantaandLouisville,aSentryOneMonitoringServicecanbeinstalledinLouisvillewhichmonitorsonlythefiveserversthere,andwhichreportsbacktotheSentryOneDatabaseinAtlanta.ThisconfigurationwillresultinlessnetworktrafficacrosstheWANlinkthaniftheSentryOneMonitoringServiceinAtlantawatchedtheLouisvilleservers.Additionally,boththeAtlantaandLouisvilleSitescouldbeconfiguredtousetheirownlocalSMTPserverorSMTPservergroup,furtherreducingWANtraffic.
CONFIGUREASITETHROUGHTHENAVIGATORPANESentryOnev7addedtheabilitytoconfigureSitesthroughtheNavigatorpane,simplifyingtheprocess.ThisexamplewalksthroughcreatingasitethroughtheNavigatorpane.ThesamegeneralconfigurationoptionsarealsoavailablethroughtheSiteConfigurationWindow.Findthatexampledirectlybelowthisone.
1. Right-clickontheAllTargetsnodeintheNavigatorpaneandusetheAddSitecommand.
2. ThenewSitewillbecreatedbeneaththedefaultSitewithintheNavigatorPane;givetheSiteaname
3. InstallthenewSentryOneMonitoringServiceonanon-productionserverintheremoteSite,followingtheguidelinesbelow.
Important:Inthisstep,whenyouareinstallingtheMonitoringServiceinyourremoteSite,besurethattheinstallationpackagebuildnumberisidenticaltotheversionofyourexistinginstallation.YourSentryOneversioncanbeviewedintheHelp→AboutmenuoftheSentryOneClient.
a. WhenpromptedfortheSentryOneDatabaseinformation,specifyyourexistingSentryOneDatabaseandchooseyourdesiredAuthenticationMode.Ifthereisnotrustbetweenthedomains,youwillneedtouseeitherSQLServerauthenticationorpass-throughauthenticationtowritebacktotheSentryOneDatabase.
b. WhenpromptedfortheServiceAccountInformationbesuretouseanaccountwiththerequiredpermissions,namelySysAdminforeachmonitoredSQLServer,andWindowsAdministratorprivilegesforanyserversyouplantowatchwithSentryOne.
4. WaitjustabriefamountoftimefortheMonitoringServicetocompletelyinitialize.TheMonitoringServicewillinitiallybedisplayedintheMonitoringServiceGroupoftheDefaultSite.ItwillbeidentifiedwiththenameoftheTargetitwasinstalledon.
5. SelectthenewlyinstalledMonitoringServiceanddragittotheMonitoringServicefolderoftheRemoteSite.
6. AddanyInstancesandTargetsthatyouwishtomonitorthroughtheright-clickcontextmenuofyournewlycreatedSite.
CONFIGUREASITETHROUGHTHESITECONFIGURATIONWINDOW1. OpentheSiteConfigurationwindow(Navigatorpane→ Monitoring Service → Site
Configuration).
SentryOne User Guide | 59
2. IntheSitesSectionusetheNewbuttontoopentheAdd/Edit Site dialog.3. GivetheSiteanameandselectOK.4. InstallthenewSentryOneMonitoringServiceonanon-productionserverintheremoteSite,followingtheguidelinesbelow.
Important:Inthisstep,whenyouareinstallingtheMonitoringServiceinyourremoteSite,besurethattheinstallationpackagebuildnumberisidenticaltotheversionofyourexistinginstallation.YourSentryOneversioncanbeviewedintheHelp→AboutmenuoftheSentryOneClient.
WhenpromptedfortheSentryOneDatabaseinformation,specifyyourexistingSentryOneDatabaseandchooseyourdesiredAuthenticationMode.Ifthereisnotrustbetweenthedomains,youwillneedtouseeitherSQLServerauthenticationorpass-throughauthenticationtowritebacktotheSentryOneDatabase.
WhenpromptedfortheServiceAccountInformation,besuretouseanaccountwiththerequiredpermissionsformonitoringserversintheRemoteSite,namelySysAdminforeachmonitoredSQLServer,andWindowsAdministratorprivilegesforanyserversyouplantowatchwithSentryOne.
5. WaitjustabriefamountoftimefortheMonitoringServicetocompletelyinitialize,thenclickoffandbackontheSiteConfigurationnodetorefreshthewindow.
6. SelectthenewSiteintheSitesareaoftheSiteConfigurationwindow.ThenewSentryOneMonitoringServiceshouldshowupasAvailable.SelectitandclickAdd,thenclickSave.
7. ThenewlycreatedSiteanditsassociatedMonitoringServicewillbedisplayedintheNavigatorpane.AddanyInstancesandTargetsthatyouwishtomonitorthroughtheright-clickcontextmenuofyournewlycreatedSite.
Note:TheDefaultSiteactsasa"catchall"foranySentryOneMonitoringServicesandTargetsthatareremovedfromorhaven'tyetbeenaddedtoanyotherSites.
6.2.8.3 InventoryView
TheInventoryviewallowsyoutoseetheWatchedStatusofanyTargetwithinyourenvironment.Youcandragthecolumnheadertothetoptogroupbythatcolumn.Otheroptionsareavailableinthecontextmenuforthecolumnheadersforgrouping,sorting,filteringetc.Onceapplied,thefilterwillbeshownatthebottomofthepane.
Column Description
Site ManagementSitemaintainedthroughtheSiteConfigurationscreen,orthroughNavigatorpanedraganddropfunctionality.SitesrepresentalogicalgroupingofTargets,Instances,andMonitoringServiceswithinyourSentryOneenvironment.
MonitoringService SpecificSentryOneMonitoringServicebymachinename.
Name NameofspecificTarget.
Type TargetsmaybeSQLServer,AnalysisServices,Windows,APSAppliance,VMwareHosts,AzureSQLDB,orSQLDW
Watched TheflagsindicatewhethertheTargetiscurrentlybeingwatchedby
SentryOne User Guide | 60
SentryOne.AcheckmarkindicatesthattheTargetiscurrentlybeingwatched.AnemptycheckboxindicatesthattheTargetisnotbeingwatched.Ifyouwouldliketoreclaimalicense,clickonthecheckboxtostopwatchingthatTarget.ThatlicensecanthenbeappliedtoanotherTargetasneeded.
UsetheInventoryviewtoquicklyseehowthelicenseswithinyourenvironmentaredistributed.
Column Description
6.2.8.4 MonitoringServiceLoadBalancingandFaultTolerance
InordertoprovideautomaticloadbalancingandfaulttoleranceSentryOneallowsfortheinstallationofmultipleMonitoringServices.
Thereisnoadditionalconfigurationrequiredtoimplementthisfunctionality.OnceanadditionalSentryOneMonitoringServiceisinstalledandconnectedtothesameSentryOnedatabaseduringsetup,theywillautomaticallydistributethemonitoringloadevenlybetweenthemselvesprovidingautomaticfaulttoleranceandloadbalancing.IfoneSentryOneMonitoringServicefails,theremainingSentryOneMonitoringServiceswillpickuptheloadautomatically.
Forexample,iftherearethreeSentryOneMonitoringServicesassociatedwithnineserversallcontainedwithinthesameSite,theSentryOneMonitoringServiceswilldividetheserversevenlyamongthemselves,eachmanagingthree.IfoneSentryOneMonitoringServiceweretofail,theothertwowouldpickuptheunmanagedserversanddividetheremainingthreebetweenthemselves.
6.2.8.5 ActionsLog
SentryOneincludesaninterfaceforviewing,sorting,andfilteringlogandnotesinformation.TheActionslogiswhereinformationrelatingtoGeneral,Failsafe,andAuditActionscanbeviewed.AdditionallywheneveraConditionisconfiguredwiththeLogtoDatabaseAction,informationrelatedtothatConditioncanalsobeviewedintheActionsLog.
LOGFILTERFilterCriteriausedtomanageresultsdisplayedintheview.UsetheLogFiltertosearchforaspecificlogentrybynarrowingtheselectioncriteriatobedisplayedintheLogList.
SentryOne User Guide | 61
Property Description
After Enablesthefiltertoonlyshowlogswithaneventtimeafterthespecifiedtimeinthedate/timeselectioncontrols.
Before Enablesthefiltertoonlyshowlogswithaneventtimebeforethespecifiedtimeinthedate/timeselectioncontrols.
ObjectName FilterstheloglistbyapplyingalikecomparisontothespecifiedvaluetothevaluestoredintheObjectNamefield.
ParentName FilterstheloglistbyapplyingalikecomparisontothespecifiedvaluetothevaluestoredintheParentNamefield.
Contains Narrowstheloglisttotheentrieswiththespecifiedvalueinthemessagetext.
LogType SpecifythetypeofActionstodisplayintheLogList.
Conditions Filtersforaspecificconditioncategory.
Action Filtersforaspecificactioncategory.
Refresh Usedtorefreshthelistoflogsanddate/timefilter.
ApplyFilter UsedtoapplyFilterCriteriasettingsandrefreshtheloglist.
ResetFilter Usedtoremovethefilterappliedtotheloglist.
Page Usedtoshowthecurrentdisplaypageofresultsandhowmanypagesareintheloglist.
First Movetothefirstpageoflogresults
Previous Movetothepreviouspageoflogresults.
Next Movetothenextpageoflogresults.
Last Movetothelastpageoflogresults.
LOGLISTTheLogListshowsalllogrecordsretrieved.Recordscannotbeedited,however,notescanbeadded.Tosortalist,clickontheheader.
Column Description
LogTime Displaysthetimetheactionwasfiredfortheevent.
EventTime Displaysthestarttimefortheevent.
ObjectType Displaystheobjecttypefortheevent.
ObjectName Containsthenameoftheobjectfortheevent.
ParentObjectName Containsthenameoftheparentobjectfortheevent.
SentryOne User Guide | 62
Condition Capturestheconditionthatcausedtheevent.
Action Capturestheactionthatcausedtheevent.
NOTESLOGLISTEventhoughnotesareconsideredaloggedobject,thepropertiesaresomewhatdifferentthanthelogsforotherevents.Thus,theloglistcolumnsvaryinordertoreflectthesedifferences.
Column Description
LogTime Date/timenotewascreated.
UserName Nameofuserthatcreatedthenote.
ObjectName Theobjectnamethatthenotereferences.
ParentObjectName Thenameoftheparentobjectthatthenotereferences.
NoteText Containsthenotemessagetext.
NoteTitle Containsthetitleorsubjectofthenote.
Calendar Capturestheconditionthatcausedtheevent.
Notifications Capturestheactionthatcausedtheevent.
MESSAGEWINDOWTheMessagewindowislocatedatthebottomportionoftheview,andcontainsaread-onlyarea,displayingthelogmessages.Toaddoreditnotestoaneventinstance,right-clickonthedesiredrowinthelist,andchoosetheoptiontoAdd/EditNotestoopenthenoteeditor.
Column Description
6.2.8.6 SystemStatus
TheSystemStatusscreenprovidesinformationabouttheworkSentryOneisdoingintheenvironment,includingMonitoringServicetasks,theircurrentstate,andanyassociatedmessages.BydefaulttheSystemStatusscreenwillonlydisplayerrors.Generally,thereisnoneedtoreferencetheSystemStatusscreen,butitmaybehelpfulwhentroubleshootingenvironmentalfaults.
YoumaychoosetoviewtheinformationdisplayedinSystemStatusgroupedbyeitherTargetorMonitoringServicewiththeirassociatedcommands.
BeawarethatturningoffshowerrorswilltriggertheSentryOnedatabasetoelevatelogging.ThiscantemporarilyincreasethetransactionsonthedatabaseuntiltheSystemStatusviewisclosed.
6.2.8.7 ServiceConfigurationUtility
SentryOne User Guide | 63
TheServiceConfigurationUtilityisusedtochangethestoredcredentialsoftheSentryOneMonitoringService.ChangingthesecurityaccountusingtheservicesappletintheWindowscontrolpanelwillcausetheservicetofailandisnotsupported.Theservicewillappeartoberunning,butwillnotbeabletoperformanyworkduetoanencryptionerror.
RunningtheServiceConfigurationUtilityistheonlysupportedwayofchangingthestoredMonitoringServicecredentials.Ifonlythepasswordneedstobechanged,theservicesappletintheWindowscontrolpanelcanbeused.
The"ServiceConfiguration.exe"utilityislocatedintheSentryOneprogramgrouponthestartmenu.
6.2.8.8 MonitoringServiceLogonAccount
IftheUseraccountusedbytheMonitoringServiceneedstobechanged,theSentryOneServiceConfigurationUtilitywillneedtoberuninorderforthePublic/Privatekeyencryptiontovalidatethechange.
FormoreinformationaboutthedifferentrequirementsfortheMonitoringServicelogonaccountpleaseseetheMonitoringServiceSecuritytopicintheQuickStartGuide.
6.3 CommonTasks
6.3.1 Reporting
SentryOneoffersanexpansivelistofreportingoptions.SentryOnereportsaregeneratedusingSQLServerReportingServices(SSRS)technology.TheSentryOneClientincludesReportingServicesReportViewerwhichallowstheSentryOneReportstobeviewedfromwithintheSentryOneClient.AllreportscanbeaccessedfromtheReportsmenu.
SentryOneReportscanalsobedeployedtoaReportingServices2005andaboveserverfordistribution.
TheReport Deployment SettingsareaccessedfromtheReportsmenu.FormoreinformationaboutthesesettingsanddeployingSentryOneReportspleaseseetheReportDeploymentsectionofthistopic.
REPORTPARAMETERSOnceareportisselected,dependingonthetypeofreport,theusercanspecifyanumberofparametersincludingadateandtimerangeforthereport.Optionsmayalsobeavailabletosavetheseparametersforlateruse.Tosaveasetofparameters,choosetheSavecommandontheReportParametersdialogscreen.ToloadasavedsetofparameterssimplychooseaparametersetfromtheLoad Saved Parametersdrop-downlist.Forcertainreports,suchastheSQL ServerPerformance report,anoptionwillbeavailabletoselectmultiplesetsofparametervalues.UsetheAddtoParameterListcommandtoaddaparametersettotheselectedreport.
EXPORTINGREPORTS
SentryOne User Guide | 64
SentryOneReportscanbeexportedinavarietyofformatsfordistributionpurposes.Afterareportisrun,fromtheReportViewerscreen,choosetheExportbuttonfoundonthetoolbarasshownbelowtoexportareport:
EVENTMANAGERREPORTS
Report Description
CurrentFailures
TheCurrentFailuresreportprovidesdataaboutallfailureswhichhaveoccurredinthegiventimeframeforanymonitoredobjectswithinyourSentryOneEnvironment.Thereportincludesvariousinformationabouttheassociatedfailuresincluding:nameoftheevent,parentInstancename,laststepoutput,startandendtimes.ReportparametersallowyoutochoosetoshoweitherOpenFailuresonlyorAllFailures.AnyusernotesaddedtotheJobfailureinstancewillalsobeavailableonthisreport.UsetheCurrentFailuresreporttoquicklyidentifyobjectfailuresovertheselectedtimeframe.
ManagementSummary
TheManagementSummaryreportprovidesahigh-leveloverviewofthemonitoredserverswithinyourSentryOneenvironment.Thereportincludesacountofallmonitoredobjects,andasapplicable,theassociatednumberoffailuresrecordedforthoseobjects,groupedinthefollowingranges:last30 days,last7 days,andlast24 hours.UsetheManagementSummaryreporttohelpyoudeterminewhichserversarethemostactiveinyourenvironment.
PerformanceCountersList
ThePerformanceCountersListreportprovidesdataaboutperformancecounters('SchedulePerformanceMonitoring'intheon-linedocumentation)currentlyassociatedwithspecificeventobjectsorcustomeventviewswithinyourSentryOneEnvironment.Informationabouteachperformancecounterisdisplayedforthespecifiedtimerange,includingtheminimum,maximum,andaverageoftherecordedmetric.UsethePerformanceCountersListreporttoquicklyidentifyactiveperformancecountersinyourenvironment.
SentryOne User Guide | 65
WatchedObjectSummary
TheWatchedObjectSummaryreportprovidesinformationaboutthedifferenttypesofobjectsfoundoneachwatchedInstance.ThereportbreaksdownthewatchedandunwatchedobjectsbyInstancetypeandeventsource.CountsforthenumberofchildobjectsbelongingtotheInstancewhichareenabledordisabledarealsoprovidedinthisreport.UsetheWatchedObjectSummaryreporttoidentifythenumberofmonitoredobjectsonyourwatchedInstances.
PERFORMANCEANALYSISREPORTSThePerformanceAnalysisreportsarethecompaniontoSentryOnePerformanceAnalysis.FormoreinformationaboutthevariousmetricscontainedinthePerformanceAnalysisreportspleasereviewthePerformanceMetricstopic.
Note:Onapplicablereports,theLoadSavedParametersdrop-downboxallowstheusertosavetheparametersforfutureuse.
PERFORMANCE
Report Description
GlobalServerPerformance
TheGlobalServerPerformancereportprovidesasummaryoftheperformancemetricscollectedforeachoftheserversinyourSentryOneenvironment.UsetheGlobalServerPerformancereportinconjunctionwiththePerformanceAnalysisGlobalViewforahigh-levelunderstandingofserverperformanceacrossyourentiremonitoredenvironment.
IndexDefragmentationDetails-ByDatabase
TheIndexDefragmentationDetailsreportprovidesasummaryofthedefragmentationdetailsfortheindexesinyourenvironment.Defragmentationmetricsprovidedincludefragmentationpercentages,defragmethod,fragmentationpercentagepostdefrag,andstart/endtimes.
IndexFragmentationandUsage
TheIndexFragmentationandUsagereportprovidesagraphicalrepresentationoftheoverallfragmentation,diskspaceusageandbufferusageoftheindexesinyourenvironment.
PerformanceCounterDateRangeComparison
ThePerformanceCounterDateRangeComparisonreportprovidesbothgraphicalandtextualdatafortheselectedperformancecounter(s)overthespecifiedtimerange.Variousparameterscanbeconfiguredincluding:Server,Instance,Category,Counter,andInstance.ThisreportissimilartothePerformanceCounterHistoryreportexcepttwodifferenttimerangescanbeselected.
PerformanceCounterHistory
ThePerformanceCounterHistoryreportprovidesbothgraphicalandtextualdatafortheselectedperformancecounter(s)overthespecifiedtimerange.Variousparametersinclude:Server,Connection,Category,Counter,
Report Description
SentryOne User Guide | 66
andInstancecanbeconfigured.
ServerHealth
-ByEventSeverity
-ByResourceCategory
TheServerHealth-ByEventSeverityreportillustratesyourcurrentServerHealthScorewhichisbasedontheseverityofactiveAdvisoryConditionsinyourenvironment.
TheServerHealth-ByResourceCategoryreportdisplaysyouraveragewaittimesorganizedbydifferentresourcetypes.
BothreportsalsofeaturealistingoftheAdvisoryConditionsthatwereactiveduringthattimeperiodandalsoabarthatgraphicallyrepresentstheamountofuptimethattheserverhassustained.
SQLServerPerformance
TheSQLServerPerformancereportprovidesdetailedSQLServerperformancedatafortheinstanceovertheselectedtimerange.UsetheSQLServerPerformancereportinconjunctionwiththePerformanceAnalysisDashboardtogainanunderstandingofSQLServerperformanceinyourmonitoredenvironment.
SQLServerTransactions-TopDatabases
TheSQLServerTransactions-TopDatabasesreportprovidesdetaileddataabouttransactionsandlogflushesfortheselectedInstanceoverthespecifiedtimerange.Thereportincludesaminimum,maximum,average,andtotalcolumnforeachmetric.Thereportincludesthetop10databasesfortheInstanceasdeterminedbythetotalnumberoflogflushesandtransactions.
SQLServerWaitStatsAnalysis
TheSQLServerWaitStatsAnalysisreportprovidesdetaileddataaboutSQLServerWaitsfortheinstanceovertheselectedtimerange.Severalaggregatewaitsgroupingsareincorporatedintothereport,includingwaitsbycategory,byclass,andbytype.EachgroupingbreaksdowntheWaitsdatabyResourceWaits,CPUWaits,andTotalWaits.Metricsaredisplayedinmilliseconds(MS).
SQLServerWaitStatsAnalysis-ByResourceandCPUWaits
TheSQLServerWaitStatsAnalysis-ByResourceandCPUWaitsreportprovidesdetaileddataaboutSQLServerWaitsfortheinstanceovertheselectedtimerange.Severalaggregatewaitsgroupingsareincorporatedintothereport,includingwaitsbycategory,byclass(CPUorResource),andbytype(CPUorResource).Metricsaredisplayedinmilliseconds(MS).
SSASPerformance
TheSSASPerformancereportprovidesdetailedgraphicalinformationregardingtheSSASperformancefortheselectedInstanceoveragiventimerange.
Windows+SQLServerPerformance
TheWindows+SQLServerPerformancereportprovidesdetailedperformancemetricsforeachinstanceontheselectedserverwithregardtoWindowsandSQLServerperformance.UsetheWindows+SQLServerPerformancereportinconjunctionwiththePerformanceAnalysisDashboardtogainaninsightintotheperformanceofyourmonitored
Report Description
SentryOne User Guide | 67
environment.
WindowsPerformance
TheWindowsPerformancereportprovidesdetailedWIndowsperformancedatafortheinstanceovertheselectedtimerange.UsetheWindowsPerformancereportinconjunctionwiththePerformanceAnalysisDashboardtogainanunderstandingofWindowsperformanceinyourmonitoredenvironment.
BLOCKING
Report Description
Blocking
-ByApplication
-ByApplicationMatrix
-ByUser
-BySQLServer
-ByWaitResource
-ByWaitType
TheBlockingreportsprovideasummaryofblockingdataoverthegiventimerange.Theyaredesignedtoaggregatebyblockingquery,blockedquery,andwaitresourcefortheselectedtimeframe.Usethisdataalongwithotherblocking-levelmetricsavailableintheBlockingSQLtabofPerformanceAnalysistoidentifyandtargetproblemareas.
TOPSQL
Report Description
TopSQL
-ByUser
-ByDatabase
-ByApplication
-ByServer
-AllServers
TheTopSQLreportsprovideasummaryofTopSQLdatacapturedoverthegiventimerange.TopSQLcontainsyourhighimpact,worstperformingstoredprocedures,batches,andstatements.TheinformationcapturedbyTopSQLcanbebasedonanycombinationofduration,cpu,reads,orwrites.UsethisdataalongwithothermetricsavailableintheTopSQLtabofPerformanceAnalysistoidentifyandtargetproblemareas.EachoftheTopSQLreportswillgrouptheTopSQLdatabyitsrespectivecategoryname.
DISK/FILESPACEUsetheDisk/FileSpacereportsinconjunctionwiththeDiskActivityandDiskSpacetabsofPerformance Analysistoidentifydatadiskcapacityissuesandpossibleperformancebottlenecks.
Report Description
SentryOne User Guide | 68
Report Description
SQLServerFileGrowth-TopFiles
-AllServers
TheSQLServerFileGrowth-TopFiles-AllServersreportprovidesdataandlogfilegrowthovertheselectedtimerangefortheTopNfiles,asselectedinthereportparameters,acrossyourentireinstallation.TherearerepresentationsforTotal SizeandUsed sizeovertheselectedtimeframe.
SQLServerFileUtilization
-TopFiles
-ByLogicalDisk
-ByDatabase
TheSQLServerFileUtilizationreportprovidesdataandlogfilegrowthovertheselectedtimerangefortheTop5files,onthespecifiedInstance.TherearerepresentationsforTotal SizeandUsed sizeovertheselectedtimeframe.EachoftheSQLServerFileUtilizationreportswillgroupthedatabyitsrespectivecategoryname.
WindowsDiskUtilization
-ByServer
TheWindowsDiskUtilization-ByServerreportprovidestheamountofusedandfreespacefortheselectedserveroverthespecifiedtimerange.ThereportprovidesdataforbothPhysicalandLogicaldiskutilization.
WindowsDiskUtilization
-AllServers
TheWindowsDiskUtilization-AllServersreportprovidesthedisksize,usedspace,freespace,andusedspacehistoryforallofthemonitoredserverswithinyourSentryOneEnvironment.
MisalignedPartitions
-ByServer
-AllServers
TheMisalignedPartitionsreportsprovidesasummaryofthemisalignedpartitionsfortheselectedserver.
HighVLFs
-ByServer
-AllServers
TheHighVLFsreportsprovidesdataaboutthosetransactionlogswhichhaveahighnumberofVirtualLogFiles(VLFs).
DatabaseswithoutRecentBackups
TheDatabaseswithoutRecentBackupsreportprovidesinformationaboutDatabaseswithoutarecentbackupinyourmonitoredenvironment.InformationisincludedforbothDataandLogfiles,includingtheLastBackupTime,LastBackupType,andUsedSize(MB).Thedefaulttimerangeforthisreportcoversthelast15days,butisconfigurable.TransactionLogfilesarenotincludedinthisreportifthedatabaseisinsimplerecovery.
DEADLOCKS
SentryOne User Guide | 69
Report Description
Deadlocks
-ByApplication
-ByApplicationMatrix
-ByResource
-BySQLServer
-ByUser
TheDeadlocksreportsprovideinformationregardingdeadlocksinvariouswaysoveraspecifiedtimerange.WhenusedinconjunctionwiththeDeadlockstabinPerformanceAnalysis,thesereportscanhelptrackdownproblematicdeadlocks.
GENERAL
Report Description
ActionCounts
TheActionCountsreportprovidesacount,brokendownbyobjectandparentobject,ofActionsthathavetakenplaceduringtheselectedtimerange.Thisreportcangiveyouvaluableinformationforfinetuningalertsinyourenvironment.UsetheActionCountsreporttoquicklyidentifywherethealertsinyourenvironmentarecomingfromandthenmakeanyadjustmentsasneeded.
ActiveSettingsList
TheActiveSettingsListreportprovidesdetailsoneverysettingconfiguredinyourenvironmentatalllevelscombinedintooneresource.Thisreportcangiveyouvaluableinformationabouthowsettingsareeffectingyourconfiguredactionsandcollectionsettings.
ConfiguredActionsList
TheConfiguredActionsListreportprovidesalistoneveryactionthathasbeenconfiguredforagivencondition,specifyingatwhatleveltheactionhasbeenconfigured.
ConfiguredNotificationList
TheConfiguredNotificationListreportallowsyoutoviewallconditionsthatarespecificallyconfiguredtosendnotificationsbyemailorpager.
Downtime-ByServerTheDowntime-ByServerreportprovidesalistingofallserverdowntimeactivityforthespecifiedtimerange.Includedinthereportsaremetricssuchastotalincidents,totaldowntimeinseconds,averagedowntimeperincident,uptimepercentage,andfirst/lastincidenttimes.
REPORTDEPLOYMENTYoucandeployanySentryOnereporttooneormoreReportingServices2005andaboveservers.DeployingreportstoyourownSSRSinstanceallowsyoutocreatecustomdeploymentschedules.Beforethereportscanbedeployed,youmustspecifythenameoftheserverwhereyouwishtodeploythereports.
DEPLOYMENTSETTINGS
SentryOne User Guide | 70
TheReportDeploymentSettingsmaybeaccessedfromtheReportsmenu(Reports→DeploymentSettings).ThefollowingReportingServiceendpointsaresupportedfordeployingSentryOneReports:
SSRS2005/2008nativemode:
http://<ServerName>/ReportServer/ReportingService2005.asmx
SSRS2008R2orhigher,nativemodemode:
http://<ServerName>/ReportServer/ReportService2010.asmx
Whenyouchoosetodeployyourreports,youwillbegiventheabilitytodecidewhereonyourreportingserverthatyouwouldliketostorethesereports.SimplyclickthedesiredfolderandpressOK.Youmaycreatenewfoldersbyright-clickingonanexistingfolderandchoosingNewFolder.
Note:WindowsAuthenticationmustbeenabledtoimmediatelyrunreportsviathewebinterface.
REPORTSUBSCRIPTIONSInordertocreateasubscriptionforanyoftheSentryOneReportsyouwillneedtoadjusttheInstancepropertiesoftheSQLDataSourceSQLDSasfollows.InthePropertiesofthedatasourcechangetheConnect usingsettingstotheCredentialsstoredsecurelyinthereportserveroption.Beneaththis,besuretoalsoselecttheUseasWindowscredentialswhenconnectingtothedatasourceoption.
ADDITIONALREPORTINGFEATURES
ListViews AlllistviewsinsidetheSentryOneClientcanbeeasilyexported.
RuntimeStats AllruntimestatsintheSentryOneClientareprintable.
PerformanceGraphs AllperformancegraphsintheSentryOneClientareprintable.
EventChains AllEventChaindiagramsintheSentryOneClientareprintable.
CalendarViews AllCalendarviewsintheSentryOneClientareprintable.
IMPORTREPORTSThisoptioncanbefoundintheReportsmenu.SentryOnesupportsimportingfuturereports(createdbytheSentryOnedevelopmentteam)totheClientseparatelywithoutrequiringanupgrade.
6.3.2 AddingNotes
NotesareusedtohelpfacilitatecommunicationbetweenDBAteammembers.Theycanbeusedforchangetracking,resolutionhistory,andavarietyofotherfunctions.Youcansetnotestobeincludedinanyfuturenotificationsgeneratedforanobject,aswellastobedisplayedforall
SentryOne User Guide | 71
calendarinstancesofanobject.Bothofthesefeaturescanbevaluableforsharingescalationprocedures,recoverysteps,emergencycontactinformation,etc.,withotherteammembers.
TheNotesinterfacecanbereachedthroughavarietyofcontextmenusthroughouttheSentryOneClient,justaboutanywherethatyoucanactonaneventobjectoreventinstance.Thenotesinterfacecanalsobeaccessedbypressing(CTRL+ALT+N)whenanapplicableobjectisselected.
Whenaddinganote,ifanyfailuresexistfortheselectedeventobject,youwillbepromptedtoclearthem.
Field Hotkey Description
User n/a DisplaysthecurrentWindowsusername.
Title n/a Thesubjectofthenotewhichwillappearintheselectionlist.
Note n/a Thebodyofthenotewhichcannotbeblank.
IncludeinNotifications n/a Enablethissettingtoincludethisnotewithanynotificationsrelatedtotheobject.
ShowforAllCalendarInstances n/a Enablethissettingtoshowthenoteinformationinthepopupofeveryeventinstanceoftheobject.
New Ctrl+N Createsanewnote.
Save Ctrl+S Savesthecurrentnote.
Delete Ctrl+D Todeleteanote,selectitfromthelistandclickdelete.
Close Ctrl+C Closesthewindow.
SentryOne User Guide | 72
Seealso:
NotesLog
ClearingFailedInstances
6.3.3 MonitorAdditionalTargetsandInstances
TERMINOLOGYWhenthewordTargetisused,wearereferringtothedevicethathousesyourdata,whetherit'saphysicalserver,cloudinstallation,orAPSappliance.
InstanceisreferringtoaninstanceofSQLServerorSSASthatexistsonaTargetinyourenvironment.
SUPPORTEDTARGETSANDINSTANCESCurrently,SentryOnesupportsthemonitoringofWindows,SQLDW,AzureSQLDatabase,VMwareHost,andAPSapplianceTargets.SupportedInstancesincludeSQLServerandSSAS.Foradditionaldetails,includingsupportedversions,pleaseseeourQuickStartguide.
ACCESSLEVELWhenaddinganewTarget,thefirststepisaFeatureAvailabilitytest.TheresultsofthistestwilldeterminewhethertheTargetwillbeaddedwithFullAccessorLimitedAccess.WhenaTargetisaddedwithFullAccess,themonitoringservicewillcollectWindowslevelmetricsandyouwillhavefullaccesstothefeaturesofPerformanceAnalysis.
IftheTargetfailstheFeatureAvailabilitytest,youcanclicktheTroubleshootinglinkandattempttoresolvetheissue.Afterapplyingasolution,youcanthenretesttheTarget.TherearesomesituationsinwhichLimitedAccessistheonlyoption.Forexample,ifyouaremonitoringacloud-basedSQLServerinstance,youwilllikelynothaveaccesstotheOS.WhenLimitedAccessisapplied,themonitoringservicewillnotcollectPerformanceCounters,andaccesstotheWindowsDashboard,DiskActivitytab,DiskSpacetab,andWindowsProcessestabwillberestricted.
ADDINGINSTANCESYoucaneasilyaddadditionalmonitoredInstancestoyourSentryOneenvironment.Thisisaccomplishedbyright-clickingeithertheAllTargetsnode,aSitenode,aTargetGroupnode,oranexistingTargetnodeintheNavigatorpaneandusingtheAddInstancecommand.YoucanalsoaddanInstancethroughtheFilemenu.
IntheAddInstancedialogyoumaychoosethedesiredInstanceTypefromthedrop-downmenu(AnalysisServicesInstance,SQLServerInstance).
WATCHINGINSTANCESBeforeSentryOnewillstartmonitoringanInstanceorobject,itsstatusmustbesetto“watched”.Instancesorobjectsthatarenotbeingwatchedwillbedisplayedwithagrayed-outiconnexttotheirnameintheNavigatortreeview.
SentryOne User Guide | 73
UnwatchedInstancesorobjectscanhavetheirstatussettowatchedthroughtheirrespectivecontextmenuswiththeWatchcommand.OnceyouhavewatchedanewInstancetheSentryOneMonitoringServicewillstartactivelymonitoringtheInstanceanditsobjects,andbeginhonoringanyassociatedconfiguredConditionsandActions.
Note:ImmediatelyafteraddinganInstanceorsettinganInstancetowatchedstatusSentryOnewillbegintosynchronizewiththatInstance.ExactlyhowlongthesynchronizationprocesstakesdependsonthenumberofobjectsassociatedwiththeInstance,theamountofhistoricaldataavailable,andhowmanyInstancesarebeingwatchedatthesametime.TheWatch Status Windowwillkeepyouinformedoftheprocessandalertyouaboutanyerrors.
MODIFYINGINSTANCEPROPERTIESAfteryou’veaddedanInstance,youmayneedtochangehowSentryOneconnectstothetarget.WhenrightclickingonanInstance,you’llseetwooptionsforconnectionproperties:UserandMonitoringService.
UserConnectionPropertiesdefinehowyourSentryOneClientwillconnecttoamonitoredserverforthecurrentuser.ThesepropertiescanvaryforeachClientinyourenvironment.TheSentryOneClientonlyconnectsdirectlytoamonitoredserverunderspecificscenarios.MoredetailsregardingthosescenariosandspecificsecurityrequirementscanbefoundintheClientSecuritysectionofourQuickStartGuide
MonitoringServiceConnectionPropertiesdefinehowtheSentryOneMonitoringServicewillconnecttotheselectedserver.ThesettingcanbeappliedfromanySentryOneClient.TheMonitoringServiceConnectioncanbeconfiguredbyrightclickingontheInstanceandselectingMonitoringServiceConnectionPropertiesfromthecontextmenu.PleaseseeourQuickStartGuideforadditionalinformationonMonitoringServiceSecurity.
WithintheConnectionPropertieswindow,thereareseveralpropertiesthatcanbechanged.
·EnableIntegratedAuthentication.ThissettingtellstheInstancetousetheintegratedWindowsaccountinformation.
·Credentials.ThisiswhereyouenterSQLServercredentialsifyouarenotusingIntegratedAuthentication.
·Alias.Bydefault,youwillseetheservernamethatyouinitiallyenteredwhenaddingtheInstance.
·Port.ThissettingisusedtoconnecttoSQLServerifithasbeenconfiguredtoanon-standardport.
·AccessLevel.ThissettingisusedtoassignthelevelofaccessthatSentryOnehastotheselectedtarget.ATargetwithlimitedaccesswillnotbeabletoaccessWindowsbasedfeatures,suchastheWindowsDashboard,WindowsProcessestab,DiskSpacetab,orDiskActivitytab.LimitedaccesstargetswillalsonothaveaccesstoPerfLibPerformanceCountersforthattarget.
AllofthesesettingsareavailableforSQLServerInstances.SSASInstancesonlyofferthePortsetting.TargetsoffertheAccessLevelsetting.
SentryOne User Guide | 74
If you are monitoring the Instance with Performance Analysis, changing the Monitoring ServiceConnection Properties to SQL Server credentials is not supported. Please see the Quick Start Guidefor additional information regarding Performance Analysis Security Requirements.
6.3.4 ConnecttoInstallation
TheConnecttoInstallation...FilemenuitemcontrolstheactivedatabaseforthelocallyinstalledSentryOneMonitoringServiceandClient.
PleaseSpecifytheServer
EnterthenameoftheServertoconnecttointhefieldprovided.
PleaseSpecifytheDatabaseName
SpecifythedatabasenameoftheSentryOneDatabasethatyouwishtoconnectto.
UseIntegratedWindowsAuthentication
ByDefaultthisoptionwillbeselected.IfyouwishtouseSQLServerauthentication,unchecktheboxandentertheSQLServercredentials.AfterconnectingtotheserveranewinstanceoftheSentryOneClientwillbelaunchedthatconnectstothespecifiedalternateinstallation.
ToRemoveanoldServerfromtheAllInstancesView
WhenyoustarttheSentryOneClient,ifyouhavemorethanoneserverintheAllInstancesViewyouwillbepromptedtochooseaninstallationtoconnectto.YoumayhavemorethanoneserverintheAllInstancesViewifyouhavemovedtheSentryOneDatabasetoanewlocation.
ToremoveanoldserverfromtheAllInstancesViewsothatyouwillnolongerbepromptedaboutitwhenopeningtheSentryOneClient:
SentryOne User Guide | 75
1. SelecttheServer Nameoftheserveryouwouldliketoremoveinthe“PleaseSpecifytheServerName”drop-downlist,andpressShift+Delete.
2. Thenewservershouldnowbetheonlyonelistedinthedrop-downlist.UsetheConnectcommandandconnecttothenewinstallation.
ThenexttimeyouopentheClientitwillautomaticallyconnecttothenewinstallation.
SentryOne User Guide | 76
7 AlertingandResponseSystem
SentryOne employs a comprehensive Alerting and Response System. The Alerting and ResponseSystem uses the concept of Conditions and Actions. Conditions describe the various states ofmonitored objects. SentryOne allows you to define criteria for when Conditions are met usingvarious Settings including Condition Settings. As a response to Conditions taking placeActions can be configured.You can refinehow often Actions will be carried out using ResponseRulesets. To control the time frame of when an Action will be processed you may also apply aWindow directly to any configured Action.Conditions and Settings are all hierarchical, working through the principle of inheritance. Thismeans that Conditions and Settings applied at the global level (All Targets node), areautomatically inherited by all objects below that node. Any Inherited Conditions or Settings canthen be overridden at each lower level as needed.In practice, this allows you to design your alerts and responses at a high level (Global AllTargets) and then fine tune them as necessary at the lower levels (Sites, Targets, TargetGroups, Instances, Objects).ForavisualrepresentationofthesedifferentlevelsseetheAlertingandResponseSystemHierarchydiagram.The following table contains a brief description of the different concepts within the SentryOneAlertingandResponsesystem.Fordetailedinformationconcerningeachconcept,selectthelinkstoopentheindividualsub-topics.Concepts:Concept Description
→ContactManagement TheContactsNavigatornodeisusedtocreateandmaintainUsersandGroupswithinyourSentryOneenvironment.OnceaUserorGrouphasbeencreatedtheycanbechosenasatargetfortheSendEmail/SendPageAction.
→Conditions Conditionsdescribethevariousstatesofmonitoredeventobjectsorassociatedperformancecounters('SchedulePerformanceMonitoring'intheon-linedocumentation).YoudefineActionstotakewhenConditionsaremet.
→ConditionSettings ConditionSettingsallowyoutodefinerulesthataConditionmustmeetinorderfortheConditiontobefullysatisfied.ConditionSettingsareapplicabletomostGeneralConditionsandallAuditandFailsafeconditionsandareconfiguredusingavisualfiltereditor.
→Actions ActionsdeterminewhathappenswhenaConditionismet,includingsendingnotifications,executingaprocess,etc.
→Settings SettingsdefinecriteriaforwhenaConditionisconsideredtobemet,includingruntimethresholdsforeventsthatarecaptured.CertainSettings,knownasSourceSettingsdefinewhateventsarecollectedbySentryOne.
→ResponseRulesets ResponseRulesetscontrolhowoftenActionsaretakenin
SentryOne User Guide | 77
responsetoConditionsbeingmet.TheydothisbyassigningadditionalcriteriaontopoftheConditionitself,thatmustbemetbeforeanActionwilltakeplace.ThedefaultResponseRulesetisNotify EveryTime.
→Windows WindowsmaybeapplieddirectlytoanyconfiguredActiontocontrolthetimeframeofwhenthatActionwillbeprocessed.Windowsmayalsobeappliedtousersorgroups.
→ObjectGroups ObjectGroupsexistoutsideofthenormalSentryOneHierarchy;anActionorSettingconfiguredforanObjectGroupwillbeappliedlast,afteranyinheritedorexplicitlydefinedActionorSetting.ObjectGroupsareusefulwhenyouneedtoapplylikepoliciestoasetofobjectsthatdonotexistwithinthesamehierarchicalgroupsinyourSentryOneenvironment.
ALERTINGANDRESPONSESYSTEMHIERARCHYActionsand Settingshave a hierarchical configuration. This means that settings applied at theGlobal level (All Targets) are automatically inherited by all objects below that node. InheritedConditions andSettings canthenbeoverriddenat eachlevel as needed. ThesenewConditionsandSettingswillthenbeinheritedbyeachobjectbelowthatlevel.ThebelowdiagramshowstheflowofinheritedConditionsandSettings.ItalsoshowsthoselevelsatwhichtheConditionsandSettingspanesareavailableforconfiguration.
Concept Description
7.1 Conditions
Conditions describe the various states of an event object or associated performance counters('Schedule Performance Monitoring' in the on-line documentation). You can configureActions to take place when a Condition is met.All Actions work on the principle of inheritance.This means that if you configure an Action in response to a Condition being met at the Globallevel (Shared Groups), it will be automatically passed down to all applicable objects below it. Thisallows the user to define Global Actions for the most common issues across your environmentonce, and have those passed down to every monitored server automatically. You can furtherrefine Actions at each level as needed.
SentryOne User Guide | 78
For a general overview of the Alerting and Response System see the Alerting and ResponseSystem topic. For a visual representation of how inheritance works within SentryOne see theAlerting and Response System Hierarchy diagram.Conditions fall into four categories: General, Failsafe, Audit, and Advisory.
Condition Description
→General Conditions GeneralConditionsareapplicabletomonitoredeventobjectsorassociatedperformancecounters.ThesearethemostcommonConditionswhichyouwillconfigureActionsforinyourenvironment.NotallGeneralConditionsapplytoalleventobjecttypesConditionSettingsareavailableformostGeneralConditions.ConditionSettingsallowyoutodefineadditionalrulesthataConditionmustmeetinorderfortheConditiontobefullysatisfied.
ExampleGeneralConditionsincludeSQLAgentjobfailure,EventChaincompleted,andRuntimeThresholdconditions.ForacompletelistofGeneralConditionsseetheGeneralConditionstopic.
YoucanconfigureActionsinresponsetoGeneralConditionsbeingmetattheGloballevel(SharedGroups),attheSitelevel,attheTargetlevel,attheInstancelevel,andattheindividualobjectlevel.
→FailsafeConditions FailsafeConditionsfallintotwocategories:InstanceStatusandError.
InstanceStatusFailsafeConditionsaremetwhenanInstancegoesOfflineorOnline.ErrorFailsafeConditionsaremetwhenthereisanerrordetectedwithaSentryOneMonitoringServiceorrelatedmonitoringprocess.
ExampleFailsafeConditionsfallingundertheInstanceStatuscategoryincludeSQLServerAgentOfflineandAnalysisServerOffline.ExampleFailsafeConditionsoftheErrorcategoryincludeMonitoringServiceerrorsandReportingServicesmonitorerrors.ForacompletelistofallFailsafeConditionsseetheFailsafeConditionstopic.
YoucanconfigureActionsinresponsetoInstanceStatusConditionsbeingmet,attheGloballevel(SharedGroups),attheSitelevel,attheTargetlevel,orattheindividualInstancelevel.YoucanconfigureActionsinresponsetoErrorConditionsbeingmetattheGloballevel(SharedGroups)orattheSitelevel.
→AuditConditions AuditConditionsareapplicabletovariousactivitiescarriedoutbothinsideandoutsideoftheSentryOneClient.AuditConditionsprovideawayforyoutobenotifiedwhenvariousSettingsarechanged,ormonitoredobjectsaremodifiedfromwithintheSentryOneClient.
ExampleAuditConditionsincludeSettingschanged,Actionschanged,orResponseRulesetschanged.ForacompletelistofallAuditConditionsseetheAuditConditionstopic.
YoucanconfigureActionsinresponsetoAuditConditionsbeingmet
SentryOne User Guide | 79
attheGloballevel(SharedGroups),attheSitelevel,attheTargetlevel,orattheindividualInstancelevel.
→Advisory Conditions AdvisoryConditionsallowforthecreationofconditionsthatarecustomizedtoyourenvironmentasyouseefit.
Use the links below to jump to a description of the various Conditions. For each Condition youwill find a description and any related Setting(s) which may affect the Condition.
JumpTo:
GeneralConditionsBlocking SQL
Deadlocks
Event Chain
Event Chain Node
Index
Maintenance Plan
Performance Counter
Reporting Services Report
SQL Server Agent Alert
SQL Server Agent Job
SQL Server Agent Log
Top Commands
Top SQL
Windows Instance
FailsafeConditions
AnalysisServices
MonitoringService
SQLServerInstance
WindowsInstance
AuditConditions
CustomEventView
EventChain
Global
PerformanceCounter
Condition Description
7.1.1 ConditionSettings
SentryOne User Guide | 80
ConditionSettingsallowyoutodefinerulesthataConditionmustmeetinorderfortheConditiontobefullysatisfied.Conditionsdescribethevariousstatesofmonitoredobjectswithinyourenvironment.SentryOneallowsyoutodefineActionstobetakenwhenConditionsaremet.Throughtheuseofadvancedfiltering,theConditionSettingstabgivesyoucompletecontrolofwhenanActionshouldbetakenforagivenCondition.
ConditionSettingsallowyoutodefineanynumberofcriteriasurroundingcapturedevents.ThecriteriayoudefinemustbemetinorderfortheConditiontobesatisfied.ConditionSettingscanbeaccessedintheConditionSettingstabofanyconfiguredCondition/Actioncombination.Logicaloperatorsmaybeusedtoformcomplexconditionalgroups,allowingyoutodefinecriteriaacrossanynumberofcolumns.
WheneveryouconfigureaConditionyoualsospecifyanActiontotakeplacewhenthatConditionismet.IfaneventdoesnotmeettheConditionSettingscriteria,theConditionisnotconsideredtobemet,andtheassociatedActionwillnotbetaken.
CONFIGURINGCONDITIONSETTINGSConditionSettingsareavailableformostGeneralConditionsandallAuditandFailsafeConditions.ConditionSettingscanbeaccessedfromtheGeneralConditionspaneforconfiguredCondition/Actioncombinations.TheConditionSettingstabcontainsbothaVisualFilterEditorandaTextFilterEditor.
PleaseseetheFilterEditortopicfordetailsabouttheFilterEditor,includingcontextmenuinformation,andexampleusesforeachcriteriaoperator.
MessageText
MessageTextisausefulcolumntoconfigureaConditionSettingsfilteron.MessageTextcorrespondstotheentirebodyofanAlertnotificationreceivedforeachrespectiveCondition.AnytextyouseeinthebodyofalertemailswillbeevaluatedaspartoftheMessageTextfilter.
EventText
TheEventTextfilterisavailableforselectConditions.EventTextmostcommonlycorrespondstotherawoutputtextofanevent.ForDeadlockeventsthiswillfilteronthecapturedrawxmloftheDeadlock.ForDefragmentationeventsthefilterwillbeappliedtothelastoperationtext,whichmaycontaineventssuchasasuccessfulofflinerebuildorerrorinformationthathappenedduringtheoperation.
CONDITIONSETTINGSEXAMPLESThefollowingsectioncontainsexamplewalkthroughsforconfiguringdifferentfilterswithintheConditionSettingstab.Clickonaheadingtoexpandthesection.
IndexDefragmentationCompletedExample
INDEXDEFRAGMENTATIONCOMPLETEDEXAMPLEFragmentationManagercanperformReorganizationorRebuildoperationsbasedonfragmentationthresholdsyouspecify.YoumaywishtobenotifiedifthefragmentationlevelofanindexisstillaboveacertainthresholdafteraDefragmentationOperationhascompleted.
SentryOne User Guide | 81
InthisexamplewewillconfigureanemailalertfortheIndex:DefragmentationCompletedCondition,whichwillonlyfireafteraDefragoperationhastakenplaceandthefragmentationlevelremainsabove15%.
KeepinmindthatthereareanumberofActionswhichcanbetakeninresponsetoConditionsbeingmet.YoucouldalwayschoosetoexecuteanAgentJoboraTSQLcommand,eitherinconjunctionwith,orinsteadofsendinganalertemail.
AddtheCondition
1. SelecttheSharedGroupsnodeintheNavigatorpanetosettheActionglobally.OpentheGeneralConditionspane(Viewmenu→GeneralActions).
2. IntheGeneralConditionspaneclicktheAddbuttontoopentheActionsSelector.3. ExpandtheIndexgroupandthentheIndex:DefragmentationCompletedCondition.SelectthecheckboxnexttotheSendEmailActionandthentheOKbutton.
4. IntheActionsSettingstabselectyourdesireduserorgrouptotargetwiththeSendEmailAction.
TheconfiguredSendEmailActionfortheIndex:DefragmentationCompletedConditionisnowlistedintheGeneralConditionspane.
AddaConditionSettingtotheCondition
1. SelecttheConditionSettingstabintheGeneralConditionspane.TheConditionFilterisinitiallyempty.
2. NexttotheAndlogicalOperator,youwillseeaplus+symbol.Selecttheplus+symboltoaddanewConditionFilter.
3. Select[TableName]toopenadrop-downlistofavailablechoicesandchooseCurrentFragmentationLevel→Value[CurrentFragmentationLevel.Value].
4. FortheCriteriaOperatoropenthedrop-downlistandchooseIsgreaterthan.5. Selectthe<enteravalue>fieldandenteryourdesiredvalue.Forthisexamplewewillenter15.
TheConditionSettingisnowconfigured.IfyouselecttheConditionSettingsTexttabyoushouldseethefilterstringdefinedasfollows:
[CurrentFragmentationLevel.Value]>15.0
WiththeConditionSettingdefinedasabove,theIndex:DefragmentationCompletedConditionwillbemet,anditsassociatedSendEmailActionwillfireforthefollowingcase:
ADefragmentationOperationhascompletedonanindexandthefragmentationlevelisabove15%.
SentryOne User Guide | 82
SQLServerDeadlockExample
SQLSERVERDEADLOCKEXAMPLESentryOnecollectsinformationaboutdeadlockshappeningwithinyourenvironment.YoucanviewthisinformationintheDeadlockstabofPerformanceAnalysis.
Dependingonyourenvironmentyoumaynotwishtobealertedabouteverydeadlockwhichtakesplace.InthisexamplewewillconfigureanalertfortheSQLServer:DeadlockConditionandlimitthenotificationsyoureceivetoaspecificdatabaseusingConditionSettings.
AddtheCondition
1. SelecttheSharedGroupsnodeintheNavigatorpanetosettheActionglobally.OpentheGeneralConditionspane(Viewmenu→GeneralActions).
2. IntheGeneralConditionspaneclicktheAddbuttontoopentheActionsSelector.3. ExpandtheIndexgroupandthentheSQLServer:DeadlockCondition.SelectthecheckboxnexttotheSendEmailActionandthentheOKbutton.
4. IntheActionsSettingstabselectyourdesireduserorgrouptotargetwiththeSendEmailAction.
AddaConditionSettingtotheCondition
1. SelecttheConditionSettingstabdirectlybeneaththeExplicitsectionoftheGeneralConditionspane.TheConditionFilterisinitiallyempty.
2. NexttotheAndlogicalOperator,youwillseeaplus+symbol.Selecttheplus+symboltoaddanewConditionFilter.
3. Select[ApplicationName]toopenadrop-downlistofavailablechoicesandchoose[DatabaseName].
4. FortheCriteriaOperatoropenthedrop-downlistandchooseEquals.5. Selectthe<enteravalue>fieldandenteryourdesiredvalue.Forthisexamplewewillenter'AdventureWorks'.
TheConditionSettingisnowconfigured.IfyouselecttheConditionSettingsTexttabyoushouldseethefilterstringdefinedasfollows:
[DatabaseName]='AdventureWorks'
WiththeConditionSettingdefinedasabove,theSQLServer:DeadlockConditionwillbemet,anditsassociatedSendEmailActionwillfireforthefollowingcase:
ADeadlockisdetectedandthevictimdatabaseistheAdventureWorks.
SentryOne User Guide | 83
Stringcomparisoniscaseinsensitive.
AsyoubecomemorecomfortablewiththeConditionSettingprocessyoumaywishtobuildConditionFilterswithintheTexttab.IfyoumakeamistakewhiledoingsothesyntaxerrorwillbeunderlinedandtheVisualtabwillbecomedisableduntilyoufixtheproblem.
7.1.1.1 FilterEditor
SentryOneallowsyoutobuildcomplexfiltersforthepurposesofHistoryFilteringanddefiningConditionSettings.ThistopiccoversthefunctionalityoftheFilterEditor,whichiscommontobothHistoryFilteringandConditionSettings.
Note:TheFilterEditoriscase-insensitiveforallstringcomparisons.
FILTEREDITOROVERVIEWThebelowdiagramidentifiesthevariousaspectsoftheFilterEditor.
FILTERRULESUsingtheFilterEditor,youbuildcriteriathataneventmustmeetbydefiningrules.
Eachfilterruleismadeupofthreedistinctparts.
1. First,youdefinethescopeoftherule,byspecifyingacolumnname.2. Secondly,youselectanoperator(criteriaoperator)whichdefinesaninstructionfortestingthevalue(operandvalue).
3. Finally,youenterthevalue(operandvalue)forthisfilterrule.
RULEGROUPSIndividualrulesarelogicallygroupedintorulegroups.Eachgroupcontainsalogicaloperatorwhichdefineshowtherulesarecombinedwithinthegroup.UponcreationeachgroupwillusetheAndlogicaloperator.WhenagroupiscreatedwiththeAndlogicaloperatoreachfilterrulethatispartofthegroupmustbetrueinorderforthegrouptoevaluateastrue.Youmaychangethelogicaloperatordefinedforagroupbyfirstclickingit;adropdownmenuwillappear,allowingyoutochooseanalternative(And,Or,NotAnd,NotOr).
CONTEXTMENUSWhenyouclickonanylogicaloperatoradditionaloptionsareavailablefromthedrop-down
SentryOne User Guide | 84
menu.
TheAddConditioncommandwilladdanewfilterruletotheconditiongroup.TheAddGroupcommandwillcreateanewsub-groupbeneaththeexistinggroupwiththedefaultAndlogicaloperator.TheRemoveGroupcommandwilldeletetheselectedgroup.TheClearAllcommand,availablefromtherootlogicaloperator,willdeleteallfilterrules.
Selectingtheplus+symbolnexttoanygroup'slogicaloperatorwilladdanewfilterruletothegroup.Selectingthexsymbolnexttoanyfilterrulewilldeletethatrulefromthegroup.
7.1.2 GeneralConditions
GeneralConditionsareapplicabletomonitoredeventobjectsorassociatedperformancecounters('SchedulePerformanceMonitoring'intheon-linedocumentation).ThesearethemostcommonConditionswhichyouwillconfigureActionsforwithinyourenvironment.PleasekeepinmindthatnotallGeneralConditionsapplytoalleventobjecttypes.A Condition must besupported by an object's underlying event provider in order for Conditions and Actions to beavailable in SentryOne.
CONFIGURE ACTIONS FOR GENERAL CONDITIONSConfigureActionsforGeneralConditions
You can configure Actions in response toGeneralConditionsbeingmetattheselevels:SharedGroups(Global),Site,TargetGroup,Target,andInstance.To do so, select the node appropriate to the level you would like to configure the action for in theNavigator Pane and then the General Actions tab in the Conditions pane. If you do not see theConditions pane use the View menu → General Actions
NextyouwillwanttoclicktheAddbuttonfoundintheConditionspane.ThiswillopentheSelectActionwindow.ExpandtheapplicableObjectandCondition.Usethecheckbox(s)toselectwhichActionsshouldbetakeninresponsetothisConditionbeingmet.ClicktheOKbutton.
FormoreinformationaboutActionsthatcanbetakenwhenaConditionismetseetheActionstopic.
COMMONGENERALCONDITIONSCommonGeneralConditionsThe Following table contains a description of several common General Conditions.
Conditions IsMetWhen
Started Occurswhenaneventinstancebegins.
CompletedOccurswhenaneventinstancefinishesrunning,regardlessofsuccessorfailurestatus.
Success Occurswhenaneventinstancecompletesandreturnsasuccessstatus.
Failure Occurswhenaneventinstancecompletesandreturnsafailurestatus.
OutputContentMatch Thisconditionismetwhenspecificcontent,whichyoudefine,existsintheoutputmessagetextforaneventinstance.SeetheOutputContentMatchtopicformoreinformation.
SentryOne User Guide | 85
RuntimeThresholdMin Occurswheneveraneventrunsshorterthanx%ofitsaverageruntime,orshorterthananexplicitduration.
RuntimeThresholdMaxOccurswheneveraneventrunslongerthanx%ofitsaverageruntime,orlongerthananexplicitduration.
PerformanceCounterThresholdMin Occurswhenaminimumperformancethresholdhasbeensetforaperformancecounter,andthecounter'svaluefallsbelowit.
PerformanceCounterThresholdMax Occurswhenamaximumperformancethresholdhasbeensetforaperformancecounter,andthecounter'svalueexceedsit.
GENERALCONDITIONSCOMPREHENSIVELISTUse the links below to jump to a description of the various Conditions. For each Condition, youwill also find a column which lists related Settings which affect the Condition. Settings definecriteria for when a Condition is considered to be met, including runtime thresholds for events thatare captured. Certain Settings, known as Source Settings define what events are collectedby SentryOne. For more information about Settings see the Settings topic.
BLOCKINGSQLCondition Description RelatedSetting
BlockingSQL A Block was detected, subject to the Minimum Block Duration set forthe Blocking SQL Source. View the block on the Event Calendar orthe Performance Analysis Blocking SQL tab.
BlockingSQLSource:MinimumBlockDuration
BlockingSQL:OutputContentMatch AmatchconditionwasfoundintheoutputcontentofaBlock.
BlockingSQLSource:MinimumBlockDuration
ConditionSettings
BlockingSQL:DurationThresholdMax Blockexceededthemaximumdurationthreshold.
BlockingSQLSource:MinimumBlockDuration
BlockingSQL:MaximumDurationThreshold
DEADLOCKSCondition Description RelatedSetting
DeadlockADeadlockwasdetected.ViewthedeadlockontheEventCalendarorthePerformanceAnalysisDeadlockstab.
DeadlocksSource:CollectDeadlockEvents
Conditions IsMetWhen
SentryOne User Guide | 86
Deadlock:OutputContentMatchAmatchconditionwasfoundintheoutputcontentofaBlock.Youmustdefinewhichstringstosearchforintheeventoutputtotriggerthiscondition.SeeConditionSettingsformoreinformation.
DeadlocksSource:CollectDeadlockEvents
ConditionSettings
EVENTCHAINCondition Description Related
Setting
Completed EventChainexecutioncompleted. N/A
Failure EventChainexecutionfailed. N/A
RuntimeThresholdMax EventChainexceededthemaximumruntimethreshold. EventChain:MaximumRuntimeThreshold
RuntimeThresholdMin EventChaindidnotmeettheminimumruntimethreshold. EventChain:MinimumRuntimeThreshold
Started EventChainexecutionstarted. N/A
Success EventChainexecutionsucceeded. N/A
EVENTCHAINNODECondition Description Related
Setting
Completed EventChainNodeexecutioncompleted. N/A
Failure EventChainNodeexecutionfailed. N/A
RuntimeThresholdMax TheruntimethresholdmaximumforanEventChainNodewasexceeded. EventChainNode:MaximumRuntimeThreshold
RuntimeThresholdMin EventChainNodedidnotmeettheminimumruntimethreshold. EventChainNode:MinimumRuntimeThreshold
Started EventChainNodeexecutionstarted. N/A
Success EventChainNodeexecutionsucceeded. N/A
Condition Description RelatedSetting
SentryOne User Guide | 87
INDEXCondition Description RelatedSetting
DefragmentationComplete IndexDefragmentationCompleted. IndexDefragmentation
DefragmentationFailure IndexDefragmentationFailed. IndexDefragmentation
DefragmentationStarted IndexDefragmentationhasstarted. IndexDefragmentation
MAINTENANCEPLANCondition Description Related
Setting
OutputContentMatch A match condition was found in the output content of a Maintenance Plan. ConditionSettings
StepFailure MaintenancePlanstepfailed. N/A
PERFORMANCECOUNTERCondition Description Related
Setting
ThresholdMax Performance Counter value exceeded the maximum threshold.
PerformanceCounter:CounterThresholdsMaximum
ThresholdMin PerformanceCounterdidnotmeettheminimumthreshold
PerformanceCounter:CounterThresholdsMinimum
REPORTINGSERVICESREPORTCondition Description Related
Setting
Completed ReportingServicesReportcompleted. N/A
Failure ReportingServicesReportfailed. N/A
RuntimeThresholdMax
ReportingServicesReportexceededthemaximumruntimethreshold. ReportingServicesReport:MaximumRuntimeThreshold
RuntimeThresholdMin
ReportingServicesReportdidnotmeettheminimumruntimethreshold. ReportingServicesReport:MinimumRuntimeThreshold
Started ReportingServicesReportstarted. N/A
Success ReportingServicesReportsucceeded. N/A
SentryOne User Guide | 88
SQLSERVERAGENTALERTCondition Description Related
Setting
AlertFired SQLServerAgentAlertwasfired. N/A
OutputContentMatch AmatchconditionwasfoundintheoutputcontentofaSQLServerAgentAlert. ConditionSettings
SQLSERVERAGENTJOBCondition Description RelatedSetting
Block SQL Server Agent Job is blocked or is blocking.
TheMinimumBlockDurationRequiredtoTrigger"SQLServerAgentJob:Block"ConditioncanbechangedintheMonitoringServiceSetting.
(MonitoringService->Settings->EventMonitor)
Completed SQLServerAgentJobcompleted. N/A
Conflict There was a job conflict, meaning two or more jobs were seen runningconcurrently. N/A
Failure SQLServerAgentJobfailed. N/A
OutputContentMatch AmatchconditionwasfoundintheoutputcontentofaSQLServerAgentJob. ConditionSettings
Queued SQL Server Agent Job was queued via SentryOne's queuing system. SQLServerAgentJob:QueueType
Retry SQL Server Agent Job step was retried. N/A
RunMissed
The scheduled run for a job was missed for some reason. This may be becauseSQL Server Agent was offline.
SQLServerAgentJobsSource:MissedRunThreshold
RuntimeThresholdMaxSQL Server Agent Job exceeded the maximum runtime threshold. SQLServerAgent
Job:Maximum
Condition Description RelatedSetting
SentryOne User Guide | 89
RuntimeThreshold
RuntimeThresholdMinSQL Server Agent Job did not meet the minimum runtime threshold. SQLServerAgent
Job:MinimumRuntimeThreshold
Started SQLServerAgentJobstarted. N/A
StepFailure SQLServerAgentJobstepfailed. N/A
Success SQLServerAgentJobsucceeded. N/A
SQLSERVERAGENTLOGCondition Description Related
Setting
Error AnErroreventoccurredintheSQLServerAgentLog. N/A
OutputContentMatch AmatchconditionwasfoundintheoutputcontentofaSQLServerAgentLog. ConditionSettings
Warning AWarningeventoccurredintheSQLServerAgentLog. N/A
TOPCOMMANDSCondition Description RelatedSetting
TopCommands:Completed
An Analysis Services command (MDX or XMLA) completed.
Note: It is highly recommended that a response ruleset be used withthis condition to avoid excessive logging.
TopCommandsSource:CollectMDX/DMX/XMLAEvents
TopCommandsSource:MinimumDuration
TopCommands:Error AnAnalysisServicescommand(MDXorXMLA)completedwithanerror.
TopCommandsSource:CollectMDX/DMX/XMLAEvents
TopCommandsSource:MinimumDuration
TopCommands:OutputContentMatch
AmatchconditionwasfoundinacompletedAnalysisServicescommand(MDXorXMLA).
TopCommandsSource:CollectMDX/DMX/XMLAEvents
TopCommandsSource:MinimumDuration
ConditionSettings
TopCommands:Maximum
Condition Description RelatedSetting
SentryOne User Guide | 90
TopCommands:RuntimeThresholdMax
TheruntimethresholdmaximumwasexceededforanAnalysisServicescommand(MDXorXMLA).
RuntimeThreshold
TopCommandsSource:CollectMDX/DMX/XMLAEvents
TopCommandsSource:MinimumDuration
TOPSQLCondition Description Related
Setting
TopSQL:CompletedTop SQL event completed. NOTE: It is highly recommended that a ruleset be usedwith this condition to avoid excessive logging.
TopSQLSource
TopSQL:Error Top SQL event completed with an error. TopSQLSource
TopSQL:OutputContentMatch A match condition was found in the content of a completed Top SQL event.
TopSQLSource
ConditionSettings
TopSQL:RuntimeThresholdMax Top SQL event exceeded the maximum runtime threshold.
TopSQLSource
TopSQL:MaximumRuntimeThreshold
WINDOWSTASKCondition Description Related
Setting
Completed WindowsTaskcompleted. N/A
Failure WindowsTaskfailed,asdeterminedbythesuccessexitcodesettingforthetask. N/A
OutputContentMatch AmatchconditionwasfoundintheoutputcontentforaWindowsTask. ConditionSettings
RuntimeThresholdMax WindowsTaskexceededthemaximumruntimethreshold.
WindowsTask:MaximumRuntimeThreshold
RuntimeThresholdMin WindowsTaskdidnotmeettheminimumruntimethreshold.
WindowsTask:MaximumRuntime
Condition Description RelatedSetting
SentryOne User Guide | 91
Threshold
Started WindowsTaskstarted. N/A
Success WindowsTasksucceeded,asdeterminedbythesuccessexitcodesettingforthetask. N/A
WINDOWSEVENTLOGCondition Description Related
Setting
WindowsEventLog:Event
AneventoccurredinaWindowsEventLog.
ConditionSettingscanhelptorestrictwhicheventsyouarealertedabout.
WindowsEventLogsSource:HistoryFilter
Condition Description RelatedSetting
7.1.3 FailsafeConditions
Failsafe Conditions fall into two categories: Connection Status and Error. Instance StatusFailsafe Conditions are met when an Instance goes Offline or Online. The Offline Condition foran Instance will be met if a server crashes or becomes otherwise unavailable. The Onlinecondition will be met once that Instance becomes available again. Failsafe Error Conditions aremet when there is an error detected with a SentryOne Monitoring Service or related monitoringprocess.
The Log to Database Action and the Send Email Action are both configured by default for allFailsafe Conditions. This is so you can be alerted whenever an Instance goes offline, orwhenever the SentryOne Monitoring Service experiences an error and is unable to performits work.
CONFIGURE ACTIONS FOR FAILSAFE CONDITIONSConfigureActionsforFailsafeConditionsYou can configure Actions in response to Instance Status Failsafe Conditions being met at theselevels: Shared Groups (Global), Site, Computer Group, Computer, and Instance. You canconfigure Actions in response to Failsafe Error Conditions being met at the Global level (SharedGroups) or at the Site level.To do so, select the node appropriate to the level you would like to configure the action for in theNavigator Pane and then the Failsafe Actions tab in the Conditions pane. If you do not see theConditions pane use the View menu → Failsafe Actions.
NextyouwillwanttoclicktheAddbuttonfoundintheConditionspane.ThiswillopentheSelectActionwindow.ExpandtheapplicableObjectandCondition.Usethecheckbox(s)toselectwhichActionsshouldbetakeninresponsetothisConditionbeingmet.ClicktheOKbutton.
FormoreinformationaboutActionsthatcanbetakenwhenaConditionismetseetheActions
SentryOne User Guide | 92
topic.Below you will find a complete listing of all Failsafe conditions.
FailsafeConditions
AnalysisServices
MonitoringService
SQLServerInstance
WindowsInstance
ANALYSISSERVICESCondition Description
Offline AnalysisServicesisofflineorotherwiseinaccessible.
Online AnalysisServiceisonlineandaccessible.
MONITORINGSERVICECondition Description
EventHistoryMonitor:Error
An error was encountered by the Event History Monitor, theprocess responsible for historical data collection from varioussources.
JobMonitor:Error AnerrorwasencounteredbytheJobMonitor,theprocessresponsibleforcollectingdataforrunningSQLServerAgentJobs.
MessageProcessor:MessageActionThrottled
The Message Processor reached its max messages per intervalthreshold, and at least one message was throttled. Subsequentmessages will be sent to the Actions Log. See SentryOneMonitoring Service->Settings.
PerformanceMonitor:Error AnerrorwasencounteredbythePerformanceMonitor,theprocessresponsibleforcollectingperformancedata.
ReportingServicesMonitor:Error
AnerrorwasencounteredbytheReportingServicesMonitor,theprocessresponsibleforcollectingdataforSSRSreports.
MonitoringService:ActionFailed
TheSentryOneMonitoringServiceattemptedtoexecuteanaction,buttheactionfailed.Forexample,theSendEmailactioncanfailiftheSMTPserverisunavailable.
MonitoringService:SentryOneDatabaseOffline
TheSentryOnedatabaseisofflineorotherwiseinaccessible.
MonitoringService:SentryOneDatabaseOnline
The SentryOne database is online and accessible.
SentryOne User Guide | 93
MonitoringService:PerformanceCollectionFailed
ThePerformanceMonitorencounteredanerrorwhilecollectingdataforaspecificperformancecounter.
MonitoringService:RepositoryError
An error occurred while writing data to the SentryOne database.
MonitoringService:SynchronizationError
The SentryOne Monitoring Service encountered a critical errorwhile synchronizing settings from the SentryOne database with itsconfiguration management thread.
WindowsTaskSchedulerMonitor:Error
An error was encountered by the Task Scheduler Monitor, theprocess responsible for collecting data for Windows Tasks.
SQLSERVERINSTANCERemembertomakeuseofConditionSettingswhenconfiguringalertsforConditions.Conditionfiltersareavailablewhichcanhelpfinetuneexactlywhenaconditionisconsideredmet.
Condition Description
SQLServerAgent:Offline SQLServerAgentisofflineorotherwiseinaccessible.
SQLServerAgent:Online SQLServerAgentisonlineandaccessible.
SQLAvailabilityReplicaHealthy TheSQLAvailabilityReplicaishealthy.
SQLAvailabilityReplicaUnhealthy TheSQLAvailabilityReplicaisunhealthy.
SQLServerClusterFailover TheSQLServerclusterfailedover.
SQLServerInstance:Offline SQLServerisofflineorotherwiseinaccessible.
SQLServerInstance:Online SQLServerisonlineandaccessible.
WINDOWSINSTANCECondition Description
Offline Windows Instance is offline or otherwise inaccessible.
Online WindowsInstanceisonlineandaccessible.
7.1.4 AuditConditions
SentryOne User Guide | 94
Audit Conditions are applicable to various activities carried out both inside and outside ofthe SentryOne Client. Audit Conditions provide a way for you to be notified when variousSettings are changed, or monitored objects are modified from within the SentryOne Client.
The Log to Database Action is configured by default for all Audit Conditions. This gives youan audit trail concerning changes to your SentryOne environment. If you would like to benotified about an Audit Conditions happening in your environment you could configure theSend Email Action.
CONFIGURE ACTIONS FOR AUDIT CONDITIONSConfigureActionsforAuditConditionsYou can configure additional Actions in response to Audit Conditions being met at these levels:Shared Groups (Global), Site, Computer Group, Computer, and Connection.
To do so, select the node appropriate to the level you would like to configure the action for in theNavigator Pane and then the Audit Actions tab in the Conditions pane. If you do not see theConditions pane use the View menu → Audit Actions.
NextyouwillwanttoclicktheAddbuttonfoundintheConditionspane.ThiswillopentheSelectActionwindow.ExpandtheapplicableObjectandCondition.Usethecheckbox(s)toselectwhichActionsshouldbetakeninresponsetothisConditionbeingmet.ClicktheOKbutton.
FormoreinformationaboutActionsthatcanbetakenwhenaConditionismetseetheActionstopic.For a complete listing of all Audit conditions, see below.
AuditConditionsCustom Event ViewEvent ChainGlobalPerformance Counter
CUSTOMEVENTVIEWCondition Description
CustomEventViewCreated ACustomEventViewwascreated.
CustomEventViewDeleted ACustomEventViewwasdeleted.
EVENTCHAIN
Condition Description
EventChainModified AnEventChainwasmodified.
GLOBALCondition Description
ActionsChanged AconfiguredActionwaschangedforanobject.
ContactsChanged AContactwaschanged.
SentryOne User Guide | 95
EventObjectCreated AnEventObject(job,task,etc.)wascreated.
EventObjectDeleted AnEventObject(job,task,etc.)wasdeleted.
EventObjectPropertiesModified AnEventObject's(job,task,etc.)propertiesweremodified.
EventObjectRescheduledAnEventObject(job,task,etc.)wasrescheduled.ForsomeobjecttypesthisconditionisonlydetectedwhenreschedulingintheSentryOneClientviadrag-and-drop.
NotesChanged Anotewaschanged.
ResponseRulesetCreated AResponseRulesetwascreated.
ResponseRulesetDeleted AResponseRulesetwasdeleted.
ResponseRulesetModified AResponseRulesetwasmodified.
SettingsChanged Objectorapplicationsettingswerechanged.
WatchedFlagChanged Thewatchedflagwaschangedforanobject.
PERFORMANCECOUNTERCondition Description
PerformanceCounterAdded APerformanceCounterwasaddedtoaneventobjectoreventview.
PerformanceCounterDeleted APerformanceCounterwasdeletedfromaneventobjectoreventview.
PerformanceMonitoredFlagChanged
ThePerformanceMonitoredflagwaschangedforaneventobjectoreventview.
7.1.5 AdvisoryConditions
AdvisoryConditionsareaPerformanceAnalysisfeaturethatallowsforcustomizedalertingbasedonperformancecountermetrics,queryresults,anddurationofevents.AdvisoryConditionscanbeappliedgloballyoratspecificTargetsandInstances.
NOTE:AlicenseforPerformanceAnalysisisrequiredforAdvisoryConditionstobeevaluated.
DOWNLOADINGTHEADVISORYCONDITIONSPACKWhenopeningtheConditionsListattheGloballevel,youwillbepromptedtodownloadthelatestAdvisoryConditionsPack.ThispackcontainspredefinedAdvisoryConditionsthatwillhelpillustratethefunctionalitythattheAdvisoryConditionsfeaturehastooffer.Ifyoudecidetonot
SentryOne User Guide | 96
downloadtheAdvisoryConditionsPackatthispoint,youcanalwaysaccessitthroughtheDownloadLatestAdvisoryConditionsPackoptionintheToolsmenu.Also,ifyouchosetodisabletheautomaticcheckingforAdvisoryConditionsPacks,checkingcanbere-enabledintheUserPreferencesintheUpdatessection.
AfterdownloadingtheAdvisoryConditionsPack,youwillbepromptedtoapplyactions.SelectingyeswillopentheActionsSelector.HereyoucanapplyactionstoyournewAdvisoryConditions.
NOTE:ScheduledevaluationswillnotoccuruntilanactionisassignedtotheAdvisoryCondition.
BUILDINGANADVISORYCONDITIONTobegincreatinganAdvisoryCondition,youcaneitherclicktheCreateAdvisoryConditionbuttonintheConditionsListoryoucanrightclickontheAllTargets(Global)node,agroupnode,aTargetnode,oranInstancenodeintheNavigatorPaneandselecttheAddAdvisoryConditionoption.PleasenotethattheownerobjectoftheAdvisoryConditionisdependentonwheretheAdvisoryConditionisdefined.ThefollowingsectionswillexplainalloftheoptionsavailablewhencreatinganAdvisoryCondition.
WHERETODEFINEANADVISORYCONDITIONIntheNavigatorPane,thereareAdvisoryConditionfolderslocatedatvariouslevels.Thechartbelowoutlinesthevariouslevelsandwhattypesofconditionscanbeconfiguredatthoselevels.
LocationinHierarchy AdvisoryConditionTypesavailable
Root/Global/Site/Target
WindowsVMwareHostWindows/SQLServerAzureSQLDatabaseWindows/SSASSentryOne
SQLServerInstance Windows/SQLServer
SSASInstance Windows/SSAS
WhileSQLServerandSSASAdvisoryConditionscanbedefinedhigherinthehierarchy,definingthemattheInstanceprovidestheaddedbenefitofbeingcontextawareallowingyoutoutilizeperformancecounterinstancesspecifictothatInstanceandexecuteSQLquerieswithinthecontextofthatInstance.
ADVISORYCONDITIONTYPESThefirstoptionpresentedwhencreatinganAdvisoryConditionisthetype.Thetypedetermineswheretheconditionwillbeevaluatedandwhatmetricsareavailable.
Windows-ThisconditionwillbeevaluatedattheTargetlevelandhasaccesstoWindowsperformancemetrics.
SQLServer-ThisconditionwillbeevaluatedattheSQLServerInstancelevelandhasaccesstoWindowsandSQLServerperformancemetrics.
AzureSQLDatabase-ThisconditionwillbeevaluatedattheAzureSQLDatabaselevelandhasaccesstoAzureSQLDatabaseperformancemetrics.
SentryOne User Guide | 97
VMwareHost-ThisconditionwillbeevaluatedattheVMwareHostlevelandhasaccesstovCenterperformancemetricsassociatedwithaVMwareHost.
AnalysisServices-ThisconditionwillbeevaluatedattheSSASInstancelevelandhasaccesstoWindowsandSSASperformancemetrics.
SentryOne-ThisconditiontypewillbeevaluatedagainsttheSentryOnerepositoryandisusedtoquerytherepositoryforinformation.
ADVISORYCONDITIONOPTIONSDefaultEvaluationFrequency–Defineshowoftentheconditionisevaluated.Theevaluationfrequencycanbeadjustedindividuallythroughoutthehierarchy.
NOTE:ScheduledevaluationswillnotoccuruntilanactionisassignedtotheAdvisoryCondition.
TriggerThreshold–Defineshowlongtheconditionmustbetruebeforetheassociatedactionistaken.
Severity–Definesthesettingofseverity,whichcanbeusedasasortingparameterintheEventsLog.AdvisoryConditionswithaseverityofHighorCriticalwillalsocausetheAdvisoryConditionsfolderintheNavigatorpanetoturnredwhentrue.
EvaluationTimeout–Definesthelimitonhowlongeachevaluationisallowedtorunbeforeatimeoutoccurs.
MaximumInstanceCount-DefinesthenumberofresultsreturnedwhentheAnyinstanceoptionisused.
Color–DefinesthecolorofthedurationlinethatappearsonthePerformanceAnalysisDashboard.
SUPPORTEDVERSIONSWhencreatinganAdvisoryConditioninthehigherlevelsofthehierarchy,youmaywanttorestrictcertainconditionstorunonlyondesignatedversionsofWindowsand/orSQLServer.Forexample,ifyouwantedtorestricttheconditiontoonlyevaluateonserverswithWindowsServer2008R2andnewer,youwouldput6.1intheMinimumfield.
DEFININGANADVISORYCONDITIONSelectalogicaloperator.
And-Allconditionsmustbetrueforanactiontooccur
Or-Oneormoreconditionsmustbetrueforanactiontooccur
NotAnd-Oneormoreconditionsmustbefalseforanactiontooccur
NotOr-Allconditionsmustbefalseforanactiontooccur
ClickthePlusiconandselectacomparisontypeoranexistingAdvisoryCondition.
If an Advisory Condition is altered, it is altered in all other Advisory Conditions that are using it as anexisting condition.
Thefollowingtableshowswhatvalueretrievertypesareavailableforthevariouscomparisontypes.Graycellsindicatethatthevalueretrievertypeisunavailableforthatcomparisontype.
SentryOne User Guide | 98
NumericComparison
StringComparison
DateTimeComparison
AdditionalACTypeRestrictions ExpressionLeftSide
ExpressionRightSide
PerformanceCounter
PerformanceCounterInstancesareonlyavailableattheappropriateInstancecontext.
PerformanceCounterBaseline
UserdefinedBaselinesmustexistontheInstance.
SQLServerQuery
Windows/SQLServeronly
RepositoryQuery
AzureSQLDatabaseQuery
AzureSQLDatabaseOnly
VMwareHost VMwareHostonly
WMIQuery
ExplicitValue
LastValue
Expression
Duration
ExistingCondition
VALUERETRIEVERTYPESPerformanceCounter–Performancecountersareavailablebasedonthetypeofconditionthatisbeingcreated.ConditionsbeingbuiltattheTargetandInstancelevelarecontextawareandwillhaveaccesstospecificcounterinstances.WhendefinedattheTargetlevelorlower,youcanalsousebaselinesthatareassociatedwithperformancecounters.
NOTE:SentryOneprovidesvirtualperformancecountersforuseinAdvisoryConditions.ThesevirtualcountersaregatheredusingstoredproceduresandmaycausemoreoverheadthancounterscollectedthroughPerfLib.Virtualperformancecounterscanbeidentifiedbythelackofacolon.Forexample,SQLServerDataFileSizeisavirtualcounter.
PerformanceCounter(User)-ThePerformanceCounter(User)optionallowsfortheselectionofanyperformancecounter.Afterselectingthisoption,clicktheConnectbutton,enteraservername,thenclickConnectagain.Afterconnectingtotheserver,selecttheCategoryfieldtoviewalistofalloftheperformancecountercategoriesonthatserver.Afterselectingacategory,selectthecounterthatistobeevaluated.
NOTE:Connectingtoaserverisonlynecessarytoprovidealistofperformancecountercategoriesandcounters.Duringevaluation,thecounterwillbeevaluatedinthecontextofeachmonitoredInstance.
PerformanceCounterBaseline-PerformanceCounterBaselinesareavailablewhentheAdvisoryConditioniscreatedattheTargetorInstancelevel.AuserdefinedbaselinemustexistattheInstanceleveltobeused.
SQLServerQuery–Enterthedatabasethatthequerywillberunagainstinthefirstfield.IftheconditionisbeingdefinedattheInstancelevel,therewillbeabuttonnexttothefieldthatprovidesalistofdatabasesavailableforthatInstance.Thenextfieldisforthequery.ThequerycanbeenteredmanuallyorcanbeselectedfromalistofqueriesusingtheQueryEditor.Intheeventthataqueryreturnsmultipleresults,thefirstresultisusedfortheevaluation.
AzureSQLDatabaseQuery–Enterthedatabasethatthequerywillberunagainstinthefirst
SentryOne User Guide | 99
field.Thenextfieldisforthequery.ThequerycanbeenteredmanuallyorcanbeselectedfromalistofqueriesusingtheQueryEditor.Intheeventthataqueryreturnsmultipleresults,thefirstresultisusedfortheevaluation.
RepositoryQuery-ThisoptionallowsyoutoperformaqueryagainsttheSentryOnerepository.WhenusingaRepositoryQuery,youcanusethevariables@ComputerIDand@ConnectionIDinyourquerytodynamicallyadjustdependingontheComputerorConnectionthattheAdvisoryConditionisevaluatingagainst.
WMIQuery–ThisoptionallowsyoutoqueryWMIusingWQL.Foradditionalinformation,pleaseseethefollowingMicrosoftarticle,QueryingwithWQL.
ExplicitValue–Thisallowsforanexplicitlydefinedvalue.
LastValue–Thisisaright-sidespecificoptionthatreturnsthepreviousevaluationsvalueoftheleftsideoftheargument.
Expression–UsingtheExpressionoptionallowsforbasicmathematicaloperationtobeappliedtoothervalues.Operationsincludeaddition,subtraction,multiplication,anddivision.Thesemathematicaloperationscanbeperformedagainstanyoftheothernumericvalueoptions.
Duration–Thisoptionreturnstheamountoftimeelapsedtoacquirethespecifiedvalue.Varioustimeunitsareavailable,rangingfrommillisecondstodays.
NOTE:Whenusinganyqueryretrievertypeinconjunctionwiththe“Any”qualifiertocomparemultipleresults,thequeryisrequiredtoreturnakey/valuepairinordertoidentifywhichvaluemetthedefinedcondition.Thisalsoensuresthatconditionsusingqueriesonbothsidesofthecondition,orcomparingLastValue,willautomaticallymatchvalueswiththesamekey.
QUERYEDITORWhenusingaQueryretrievertype(suchastheSQLServerorRepositoryquery),youcanclickthebuttontotherightofthequeryinputboxtolaunchtheQueryEditor.
TheQueryEditoriswherequeriescanbeeditedandsavedforfutureuseinAdvisoryConditions.
New–OpentheNewQuerywindow.
Test–OpensaInstancedialogwindow.Specifytheservernameandthedatabasenamethatthequeryistobeexecutedagainst.Theresultingvaluewillbedisplayedinthefieldtotherightofthetestbutton.
Delete–Deletetheselectedquery.
NOTE:OnlyqueriesthathavebeentestedandhaveaValueDataTypecanbeselectedforusefromtheQueryEditor.
CONDITIONSLISTTheConditionsListcanbeaccessedfromvariouslocationswithinthehierarchyoftheNavigatorPane.ThenumberinparenthesisbesidetheAdvisoryConditionsfolderindicateshowmanyAdvisoryConditionsaredefinedatthatlevelwithinthehierarchy.AnexceptiontothisisAdvisoryConditionsfolderlocatedbeneaththeContactsnodeintheNavigatorPane.ThenumberhereindicatesthetotalnumberofAdvisoryConditionsdefinedacrosstheenvironment.
WhatisseenintheConditionsListdependsonwherethelistisopenedwithinthehierarchy.Whereverthelistisopened,thelistwillcontainAdvisoryConditionsdefinedatthatlevel,itsparents’levelsandchildren’slevels.
SentryOne User Guide | 100
CONDITIONSPANETheConditionsPaneprovidesalistofallavailableconditions.ThispanealsodisplaystheOwnerObject,creationdate,andlastmodifieddateoftheconditionaswellaswhatusermodifiedit.YoucandisableanAdvisoryConditionbyuncheckingthecheckboxintheEnabledcolumn.YoucanalsoaddTagstoassistwithsortingandorganizingtheconditions.
TheCreateAdvisoryConditionbuttonallowsfortheselectionofWindows,Windows/SQLServer,orWindows/SSAS.Afterselectingtheconditiontype,theConditionEditorwillbeopened.
TheEditAdvisoryConditionbuttonopenstheConditionEditorfortheconditionthatiscurrentlyselectedintheConditionsPane.
TheShowEventsLogbuttontakesyoutotheEventsLogfilteredbytheAdvisoryConditionthatisselectedintheConditionsPane.
ContextMenu
Edit–AllowsforeditingoftheselectedAdvisoryConditionShowEventsLog-OpenstheEventsLogfilteredtotheselectedAdvisoryConditionSnooze
ThisCondition/AllObjects–DisablesactionsandalertingontheselectedAdvisoryConditionfortheselectedperiodoftimeAllConditions/AllObjects–DisablesactionsandalertingonallAdvisoryConditionsfortheselectedperiodoftime
UnsnoozeThisCondition/AllObjects–Re-enablesactionsandalertingontheAdvisoryConditionAllConditions/AllObjects–Re-enablesactionsandalertingforallAdvisoryConditions
Clone–CreatesacopyoftheselectedAdvisoryConditionwithanewnamewiththeOwnerObjectbeinginthecontextoftheConditionsListExport–ExportstheselectedAdvisoryConditiontoa.conditionfileImport–ImportsanAdvisoryConditionfroma.conditionfileDisable–DisablestheselectedAdvisoryConditionDelete–DeletestheselectedAdvisoryCondition
EVALUATIONSTATUSPANETheEvaluationStatusPanedisplaysthelastevaluationfortheselectedcondition.ThispaneshowstheObjectthatwasevaluated,theresultoftheevaluation,thedurationandtimeoftheevaluation,andinformationpertainingtoanyerrorsthatmayhaveoccurred.Thebottomofthepaneprovidesacountoftheobjectsthatwereevaluated.SelectinganevaluationinthispanewilldisplaytheresultsofthatevaluationintheEvaluationResultsPanebelow.
TheEvaluateSelectedbuttonwillperformanevaluationoftheAdvisoryConditionagainsttheselectedObjectintheEvaluationStatusPane.TheWith LoggingoptionwillgenerateanentryintheEventsLogiftheconditiondoesnothavetheLogtoAlertingChannelsactionassignedtoit.
TheEvaluateAllbuttonperformsanevaluationoftheAdvisoryConditionagainstalllegaltargets.TheWith LoggingoptionwillgenerateanentryintheEventsLogiftheconditiondoesnothave
SentryOne User Guide | 101
theLogtoAlertingChannelsactionassignedtoit.
ContextMenu
Snooze–>ThisCondition/ThisObject–DisablesactionsandalertingfortheselectedAdvisoryConditionontheselectedobjectfortheselectedamountoftimeJumpToPerformanceAnalysisDashboard–OpensPerformanceAnalysisfortheselectedobject
EVALUATIONRESULTSPANETheEvaluationResultsPane,locatedatthebottom,showstheevaluationstepresultsofanAdvisoryConditionalongwithanyvaluesretrievedthroughperformancecountersorqueries.Mousingoveranyofthevalueswillprovideatooltipwithadditionalinformationlikethedurationofretrievingthatvalue,thenon-roundedvalue,errormessages,andperformancecounterinstancenames.
EVENTSLOGTheEventsLogdisplaysalloftheAdvisoryConditioneventsthatareactiveorhavecompleted.Selectinganentryinthegridviewwilldisplaythestartingstateoftheevent.InthecaseofcompletedAdvisoryConditions,clickingontheEndTimecolumnwilldisplaytheresultstatethatclosedtheactiveevent.ByclickingtheexpansionnodeintheNotescolumn,youcanaddnotestotheeventwhichcanalsobeincludedinfuturenotificationsofthatcondition.
Youalsohavetheabilitytoassignuserstoevents.Todothis,clickintotheAssignedUsercolumnandselectauserfromthedropdownlist.Alternatively,youcanautomaticallyassignausertoalleventsofaparticularAdvisoryConditionbyselectinganAdvisoryConditionintheConditionspanethathastheSendtoAlertingChannelsactionassignedtoitandselectingtheuserintheActionSettingstab.AssigninguserstoAdvisoryConditioneventsallowsforuserstoquicklysorteventsandinvestigateanyeventsthattheyhavebeenassigned.
ContextMenu
Jumpto->PerformanceAnalysisDashboard–JumpstothetimeframeoftheAdvisoryConditioneventNavigator–JumpstotheTargetorInstancewheretheAdvisoryConditioneventwasevaluated
EditAdvisoryCondition–OpenstheAdvisoryConditionEditorfortheselectedAdvisoryConditionDisable/EnableAdvisoryCondition–DisablesorEnablestheselectedAdvisoryConditionSnooze->
ThisCondition/ThisObject–DisablesactionsandalertingontheselectedAdvisoryConditionontheselectedobjectfortheselectedperiodoftimeThisCondition/AllObjects–DisablesactionsandalertingontheselectedAdvisoryConditiononallobjectsfortheselectedperiodoftime
SentryOne User Guide | 102
7.2 Actions
TheAlertingandResponsesysteminSentryOneusestheconceptofConditionsandActions.ActionscanbedefinedinresponsetocertainConditionsbeingmetwithinyourenvironment.YoucanchoosefromavarietyofActions,dependingonwhichConditionisbeingrespondedto.
AllActionsworkontheprincipleofinheritance.ThismeansthatifyouconfigureanActioninresponsetoaConditionbeingmetattheGloballevel(AllTargets),itwillbeautomaticallypasseddowntoallapplicableobjectsbelowit.ThisallowsyoutodefineGlobalActionsforthemostcommonissuesacrossyourenvironmentonce,andhavethosepasseddowntoeverymonitoredserverautomatically.YoucanfurtherrefineActionsateachlevelasneeded.ForavisualrepresentationofhowinheritanceworkswithinSentryOneseetheAlertingandResponseSystemHierarchydiagram.
EachActionthatyouconfigureinyourenvironmentwillhaveanassociatedbehavior.ThebehaviorcontrolshowtheActionwillbecarriedoutrelativetoanyinheritedActions.TherearethreeActionbehaviorsavailable:OverrideInheritedActions,CombinewithInheritedActions,andDisabled.ForacompleteexplanationandexampleusagescenarioforeachbehaviorseetheActionBehaviorsectionbelow.
YoucanfinetuneActionsforaspecificgroupofobjectsorevenanindividualobject,givingyoueffectivecontroloverhowSentryOneworksthroughoutyourenvironment.SentryOnecomeswithanumberofGlobalActionspredefinedtogetyouupandrunningquickly.TheseActionscanbechanged,asneededtofitthespecificneedsofyourenvironment.
ResponseRulesetscontrolhowoftenActionsaretakeninresponsetoConditionsbeingmet.TheydothisbyassigningadditionalcriteriaontopoftheConditionitself,thatmustbemetbeforeanActionwilltakeplace.TocontrolthetimeframeofwhenanActionwillbeprocessedyoumayalsoapplyaWindowdirectlytoanyconfiguredAction.
Jumpto:
Actions
KillTask
LogtoEventLog
LogtoDisk
SendEmail
ExecuteSQL
SendSNMPTrap
LogToDatabase
ExecuteProcess
SendPage
RunQuickTrace
ExecuteJob
HOWTOCONFIGUREACTIONSIfyouareupgradingfromapreviousversionofSentryOneyouwillnoticethattheActionsand
SentryOne User Guide | 103
Settingspanehasbeenoverhauled.
TheConditionsdisplayedintheConditionspanewillchangedependingonwhichnodeorobjectyouhaveselectedintheNavigatorpane.IfyoudonotseetheConditionspaneonceyouhaveselectedanodeintheNavigatorpane,usetheViewMenu(View→Conditions).
IfyouselecttheAllTargetsnodeyouwillseegloballyappliedConditionsintheConditionspane.WhenyouselectanyapplicableobjectlevelbelowtheAllTargetsnode,youwillseetwospecificsetsofappliedConditionsintheConditionspane.
ThetopsectionoftheConditionspanecontainstheInherited Section,whichshowsyouanyappliedConditionsthatarebeingpasseddowntothecurrentobjectlevel.TheInherited SectionalsocontainsanObjectcolumn,whichshowsyoutheobjectleveltheConditionisbeinginheritedfrom.WhenanInheritedConditionisoverriddenordisabled,itwillstillshowupintheInheritedSection,butitstextwillbegrayed-out,anditsstatuswillsayOverridden.
DirectlybeneaththeInherited Section,istheExplicit Section.TheExplicit SectioncontainsappliedConditionsthathavebeensetatthecurrentobjectlevel.TheExplicit SectionalsodisplaysaBehaviorcolumn.EachActionthatyousetupinyourenvironmentwillhaveanassociatedbehavior.ThisbehaviorcontrolshowtheActionwillbecarriedoutrelativetoanyinheritedActions.
ToaddanewAction,selectthedesirednodeintheNavigatorpane.NextyouwillwanttoclicktheAddbuttonfoundintheConditionsPane.ThiswillopentheActionSelectorwindow.ExpandtheapplicableobjectandCondition.Usethecheckbox(s)toselectwhichActionsshouldbetakeninresponsetothisConditionbeingmet.ClicktheOKbutton.
YoumayalsochoosetoquicklyDisable,Override,orCombineanyinheritedActions.Todoso,simplyselectaConditionintheInherited SectionoftheConditionspaneandchoosethedesiredcommand(Disablebutton,Overridebutton,orCombinebutton).
ACTIONBEHAVIORSEachactionthatyousetupinyourenvironmentwillhaveanassociatedbehavior.Thisbehaviorcontrolshowtheactionwillbecarriedoutrelativetoanyinheritedactions.
TheusercanchangetheBehaviorofanyActiontooneofthefollowing:
SentryOne User Guide | 104
Behavior Description
OverrideInheritedActions
Actionsdefinedwiththisbehaviorwilloverrideallactionsthatarebeinginheritedfromahigherlevel.Thisbehaviorcanbethoughtofasaspecialsetofinstructionswhicharefollowedinsteadofthepasseddown(inherited)instructions.
WhenaConditionoccurswhichtriggersanactiondefinedwiththeOverrideInheritedActionsbehavior,inheritedactionswillnotbeexecuted,buttheactionwhichisdefinedatthatspecificlevelwillbeexecuted.
TheOverrideInheritedActionsbehavioristhedefaultbehaviorassignedforanynewlydefinedaction.
→ForanexamplescenarioseetheOverrideInheritedActionsExample.
CombinewithInheritedActions
Actionsdefinedwiththisbehaviorwillbecombinedwithallinheritedactions.Thisbehaviorcanbethoughtofasasetofinstructionswhicharefollowedinadditiontothepasseddown(inherited)instructions.
WhenaConditionoccurswhichtriggersanActiondefinedwiththeCombinewithInheritedActionsbehavior,allinheritedactionswillbeexecuted,andallactionsthataredefinedatthatspecificlevelwillalsobeexecuted.
→ForanexamplescenarioseetheCombinewithInheritedActionsExample.
Disabled
WhenanactionisdefinedwiththeDisabledbehavioritwilldisableanyactionofthesameactiontype,whichisbeinginheritedforacertainCondition.Thisbehaviorcanbethoughtofasaspecialsetofinstructionswhichsimplydisallowthepasseddown(inherited)setofinstructions.
WhenaConditionoccurswhichtriggersanActiondefinedwiththeDisabledbehavior,inheritedActionswillnotbeexecuted.
→ForanexamplescenarioseetheDisabledExample.
MULTIPLEACTIONSPERCONDITIONOneofthenewimprovementsmadetotheAlertingandResponseSystemistheabilitytoaddmultipleversionsofthesameactiontypepercondition.Youcanusethisability,incombinationwithResponseRulesetstoimplementescalationprocedureswhencertainConditionstakeplace.
NOTE:Configuredactionsofthesameactiontype,definedatthesameobjectlevel,willhavetheirbehaviortypesboundtogether.Thisisbecauseinheritedactionscannot
SentryOne User Guide | 105
simultaneouslybeinmorethanonestate.(disabled,combined,andoverridden)
ACTIONSKILLTASKACTIONTheKillTaskActionwill"Kill",orcancelthecurrentjob.ThisactionistypicallyassociatedwithRuntimeMaximum,PerformanceThresholdMaximum,Block,orConflictconditions,inordertopreventresourcecontentionsituations.ItisnotapplicabletotheStartedcondition,oranyconditionsimplyingeventinstancecompletion.
LOGTOWINDOWSEVENTLOGACTIONThe log to Event Log Action sends data relevant to the condition to the Application Event Log onthe SentryOne Monitoring Service computer.
LOGTODISKACTIONThe Log to Disk Action sends data relevant to the condition to the specified text file onthe SentryOne Monitoring Service computer's file system.
SENDEMAILACTIONThe Send Email Action sends an email alert to the Users or Groups specified in the ActionSettings. For more information about Users and Groups see the Contact Management topic.
Certain Alert emails in version 7.0 now include a [View in SentryOne Client] section. You willnotice that the Event View section contains a hyperlink which begins with the SentryOne URLprotocol.Selecting this link will open the Event View in the SentryOne Client for the specificcondition which triggered the alert.
To stop receiving the Outlook Security Notice when you select an Alert email link youwill need to enable trust for the SentryOne protocol.Please see the Trusting the SentryOnehyperlink in Outlook KB article.
Settings
TheActionsSettingstaballowsthefollowingconfigurations.
Option Description
SelectTargets SpecifywhichUsersorGroupswillreceivetheemailalert.
Importance Specifytheimportanceleveloftheemailalert.
FromAddress Specifythefromemailaddressofthealert.Tousethedefaultemailaddressleavethisblank.FormoreinformationseetheSMTPconfigurationsectionoftheSentryOneMonitoringServiceSettingstopic.
EXECUTESQLACTIONTheExecuteSQLActionexecutestheT-SQLstatement(s)onthespecifiedSQLServer.
SentryOne User Guide | 106
Settings
UsetheServerlisttoselectaserver,andenterthedesiredT-SQLinthecommandtextbox.Selectingthe(Target)optionwillexecutetheT-SQLstatementagainsttheserverthattriggeredthecondition.
NOTE:Inanenvironmentwithmultiplemonitoringservices,itisimportanttonotethattheservicethatdetectstheconditionistheservicethatwillfiretheaction.Ifthatservicedoesnothaveconnectivitytothetargetedserver,theactionwillfail.
SENDSNMPTRAPACTIONThe Send SNMP Trap Action sends an Simple Network Management Protocol (SNMP) trapnotification. For more about configuring SNMP see the SentryOne Monitoring Service Settingstopic.
LOGTODATABASEACTIONThe Log To Database Action will log data relevant to the condition to the Actions log.
EXECUTEPROCESSACTIONThe Execute Process Action will execute the defined command text on the specified SQLServer.Settings Within the Execute Process Action Settings tab you will see the Execute Process section. Use theServer list to select a server. Selecting the (Target) option from the server list will execute theprocess against the server that triggered the condition. Use the Command Text box to enter thedesired literal command.
NOTE: You must enable xp_cmdshell to use this action. You may also pass certain systemparameters, as well as user defined parameters through output text.
SENDPAGEACTIONThe Send Page Action sends an alert to the Pager address for the specified Users or Groups.For more information about Users and Groups see the Contacts Management topic.
Settings
TheActionsSettingstabfortheSendPageActionallowsthefollowingconfigurations.
Option Description
SelectTargets SpecifywhichUsersorGroupswillreceivethepageralert.
Importance Specifytheimportancelevelofthepageralert.
FromAddress SpecifytheFromaddressofthealert.Tousethedefaultemailaddressleavethisblank.FormoreinformationseetheSMTPconfigurationsectionoftheSentryOneMonitoringServiceSettingstopic.
RUNQUICKTRACE™ACTIONTheRunQuickTraceActionexecutesaQuickTrace™againstaspecifiedtargetserver.AQuick
SentryOne User Guide | 107
Traceisacomprehensivesnapshotofactivitycreatedbycombiningprocess-leveldataandtraceeventscollectedduringabriefsampleperiod.AQuickTraceisnotfiltered,soitcollectsalleventsonthespecifiedSQLServer.
TheQuickTraceActionisnowavailableforawiderangeofconditions.
ToavoidimpactingtheperformanceofthetargetSQLServer,QuickTraceisbothtimeandsizelimited.OnlyonesimultaneousQuickTracecanberunagainstanytargetserver.QuickTracesarealsothrottledtocontrolthetimebetweensuccessiveruns.Thecurrentallowedfrequencyisoneminute.ThismeansthatonceaQuickTraceiscompleted,anotherQuickTracecannotbeginonthesamespecifiedserveruntiloneminutehaselapsed.
Additionally,inordertoavoidimpactingserverperformanceonverybusysystems,therearecertaincaseswhereSentryOnewillfurtherrestrictQuickTracefunctionality.IfoneofthesecasesisdetectedtheQuickTraceActionwillnotfire.PleaseseeQuickTraceRestrictionsformoreinformationaboutthesecases.
Settings
TheActionsSettingstabfortheQuickTraceActionallowsthefollowingconfigurations.
Option Description
RunQuickTraceAgainst SpecifytheTargetserveronwhichtheQuickTracewillrun.
RunQuickTracefor SpecifythelengthoftimewhichtheQuickTracewillrunagainstthetargetserver.
CollectStatementEvents SpecifieswhetherornottocollectStatementLevelEvents.EnablingtheCollectStatementEventsoptionwilldramaticallyincreasetheamounttracedatacollected.
LimitTraceDatato SpecifythemaximumnumberofrowswhichtheQuickTracewillcollect.
EXECUTEJOBACTIONTheExecuteJobActionexecutesaSQLAgentjobonthecurrentserver,oranyotherwatchedserverinyourenterprise.Thisactioneffectivelyenablesyoutocreatesimple"one-to-one"jobchainsbyassociatingitwithCompleted,SuccessorFailureconditions.AlsoseeEventChainsformoreadvancedchainingfeatures.
SettingsWithin the Action Settings tab you will see the Jobs To Execute section. Use the server list toselect a server. Use the job list to specify the SQL Agent Job to run. Once a target job has beenspecified for this action, it will show up in the Event Calendar Calendar View with a grid patternbackground as an indication of its conditional execution.
EXECUTEPOWERSHELLACTIONTheExecutePowerShellActionexecutestheenteredPowerShellscriptonthemonitoringcomputer,thetargetcomputer,oranyvalidWindowstarget.
SentryOne User Guide | 108
NOTE: You may also use system parameters in the PowerShell script, with a format of<%ParameterName%> (e.g, $ServerName = '<%ServerName%>').
SettingsWithin the Action Settings tab you will see the Server section. Use the server list to select wherethe script will be executed: on the monitoring server, on the target server, or on a specific watchedserver.
Use the account list to select whether the defined PowerShell Execution Account, a DomainAccount, or a Local Account will be used to run the script. Note that a valid user name andpassword must be provided in the Action Settings if the Domain Account or Local Account optionsare selected.
Enter or load (using the Load from File button beneath the text area) PowerShell script text intothe PowerShell Script Text section; the Test PoSh Script button can be used to test the enteredscript on a specified target.
SENDTOALERTINGCHANNELSTheSendtoAlertingChannelsactionallowsopenAdvisoryConditioneventstobedisplayedinvariousplacethroughouttheclient.
SelectingthePerformanceAnalysisDashboardoptionwillshowtheopenAdvisoryConditioneventsonthePerformanceAnalysisDashboardiftheAdvisoryConditioninvolvesaperformancecounterthatisassociatedwithoneofthechartsontheDashboard.AglyphwillalsoappearinthetopleftcornerofthechartandprovideyouwithadditionalinformationpertainingtotheAdvisoryConditionevent.
Additionally,youcanselectausertobeautomaticallyassignedtoanAdvisoryConditioneventbyselectingauserfromthedropdownlistthatappearsintheActionSettingstaboftheConditionspane.
The blog post Advisory Conditions : Available Actions contains additional information andexamples on this topic.
7.2.1 ActionBehaviors
OVERRIDEINHERITEDACTIONSEXAMPLEActionsdefinedwiththeOverrideInheritedActionsbehaviorwilloverrideallactionsthatarebeinginheritedfromahigherlevel.Thisbehaviorcanbethoughtofasaspecialsetofinstructionswhicharefollowedinsteadofthepasseddown(inherited)instructions.
Forthisexampleassumethefollowing:
ThereisaSendEmailActionconfiguredattheGloballevelwhichhasaselectedtargetofDBA1fortheSQLServerAgentJob:Failurecondition.
WiththisActionconfiguredasabove,anytimeaSQLSeverAgentJobfailsacrosstheentiremonitoredEnterprisethefollowingwilloccur:
1.TheSQL Server Agent Job: Failureconditionismet.
SentryOne User Guide | 109
2.InresponsetotheConditionbeingmet,theSend Email Actionwillexecute,sendinganotificationemailtoDBA1.
NowsupposethereisaDevelopmentServer(DEVServer)intheenvironment,whichisnotmanagedbyDBA1.ForthisparticularserverwhenanAgentJobfails,insteadoftheuserDBA1beingalerted,youwouldlikenotificationemailssenttothedeveloperoruserDEV1.
ToaccomplishthisyouwouldwanttoaddaSendEmailActionwithaselectedtargetofDEV1,fortheSQLServerAgentJob:FailureconditionattheInstancelevelwithabehaviorofOverrideInheritedActions.
WiththisActionconfiguredasabove,anytimeaSQLSeverAgentJobfailsontheDevelopmentServerthefollowingwilloccur:
1.TheSQL Server Agent Job: Failureconditionismet.
2.Inresponsetotheconditionbeingmet,theSend Email Actionwillexecute,sendinganotificationemailtoDEV1
OnlytheDevelopmentServerwouldbeimpactedbythischange.TherestofthemonitoredEnterprisewouldstillbesubjecttotheGloballyconfiguredSend Email ActionwhichhasaselectedtargetofDBA1.
COMBINEWITHINHERITEDACTIONSEXAMPLEActionsdefinedwiththeCombinewithInheritedActionsbehaviorwillbecombinedwithallinheritedactions.Thisbehaviorcanbethoughtofasasetofinstructionswhicharefollowedinadditiontothepasseddown(inherited)instructions.
Forthisexampleassumethefollowing:
ThereisaSendEmailActionconfiguredattheGloballevelwhichhasaselectedtargetofDBA1fortheSQLServer:Offlinecondition.
WiththisActionconfiguredasabove,anytimeaSQLSeverisdetectedtobeofflineacrosstheentiremonitoredEnterprise,thefollowingwilloccur:
1.TheSQL Server: OfflineConditionismet.
2.InresponsetotheConditionbeingmet,theSend Email Actionwillexecute,sendinganotificationemailtoDBA1.
NowsupposethereisaSQLServer(ASPServer)intheenvironmentthathasaninternetfacingworkload.WhentheSQL Server: Offline ConditionismetyouwouldstillliketonotifyDBA1,butyouwouldalsoliketonotifytheWebDeveloper,WEBDEV1.
ToaccomplishthisyouwouldwanttoaddaSendEmailAction,withaselectedtargetofWEBDEV1,fortheSQLServer:OfflineconditionattheInstancelevelwithabehaviorofCombinewithInheritedActions.
WiththisActionconfiguredasabove,anytimethattheASPServerisdetectedtobeoffline,thefollowingwilloccur:
1.TheSQL Server: OfflineConditionismet.
2.Inresponsetotheconditionbeingmet,theSend Email Actionwillexecute,sendinganotificationemailtoDBA1andWEBDEV1.
SentryOne User Guide | 110
OnlytheASPServerwouldbeimpactedbythischange.TherestofthemonitoredEnterprisewouldstillbesubjecttotheGloballyconfiguredSend Email ActionfortheSQL Server: OfflineCondition,whichhasaselectedtargetofDBA1.
DISABLEDBEHAVIOREXAMPLEWhenanActionisconfiguredforaConditionwiththeDisabledActionbehavior,itwilldisableanyactionofthesameactiontype,whichisbeinginherited.Thisbehaviorcanbethoughtofasaspecialsetofinstructionswhichsimplydisallowthepasseddown(inherited)setofinstructions.
Forthisexampleassumethefollowing:
OnTestServer1thereisaSendEmailActionconfiguredwhichhasaselectedtargetofDBA1fortheSQLServerAgentJob:RuntimeThresholdMaxcondition.ThisactionisconfiguredattheInstancelevel.
WiththisActionconfiguredasabove,anytimeanySQLAgentJobmeetstheRuntimeThresholdMaxconditiononTestServer1thefollowingwilloccur:
1.TheSQL Server Agent Job: Runtime Threshold MaxConditionismet.
2.InresponsetotheConditionbeingmet,theSend Email Actionwillexecute,sendinganotificationemailtoDBA1.
NowsupposethereisaJob,LongRunningJob,thatisknowntobelongrunningonTestServer1.DBA1hasnoneedtobealertedaboutitandwouldliketodisableruntimenotificationsaboutthisjob.
ToaccomplishthisyouwouldwanttoaddaSendEmailActionfortheSQLServerAgentJob:RuntimeThresholdMaxconditionattheobjectlevel(theLongRunningJob)withabehaviorofDisabled.
WiththisActionconfiguredasabovewhentheLongRunningJobrunslong,thefollowingwilloccur:
1.TheSQL Server Agent Job: Runtime Threshold MaxConditionismet.
2.InresponsetotheConditionbeingmet,theinheritedSend Email Actionwillnotbeexecuted.
OnlytheindividualSQLAgentJobLongRunningJobwillbeimpactedbythischange.TherestoftheSQLAgentJobsonTestServer1willstillbesubjecttotheInstancelevelSend Email ActionconfiguredfortheSQL Server Agent Job: Runtime Threshold MaxCondition.
7.2.2 MessageEditing
ThisfeatureallowsyoutofullycustomizethemessagesthataregeneratedbySentryOne.Thisgivesyoutheabilitytoaddorremoveinformation,changehowtheinformationisformatted,andchangetheorderinwhichtheinformationisdisplayed.ToaccesstheMessageEditor,selecttheconditionthatyou'dliketochangeintheConditionsPane,navigatetotheMessageTabinthebottomofthepane,thenclicktheEditbutton.
HOWDOESCUSTOMIZATIONWORK?
SentryOne User Guide | 111
First,itisimportanttounderstandtheformatoftheXMLthatdescribestheformatofthemessages,theelementsthatcanbeaddedtotheXMLandhowtheseelementsarerelatedtooneanother.
Attherootlevel(the"message"element),eachmessageformatXMLdocument(calleda"template")canusethe"imports"attributetoinheritfromanothertemplate.Thattemplatecaninturninheritfromanothertemplateandsooncreatingachainofparent/childrelationships.Thesechainsareusedextensivelythroughoutthetemplatefilestoreducetherepetitionofreusedelements.ThemiddlepaneofMessageEditorcoalescesthesechainsintothesingle,completeXMLdocumentthatwillbeusedtogeneratethefinalmessage.Sometimesthefinaletemplate,sometimesreferredtoasaleaftemplate,hasverylittleinformationbecausealmostalloftheXMLisintheinheritedtemplates.Inthesecases,itcanbeveryusefultolookattheCompleteXMLtofigureoutwhatisinthemessageandhowtochangeit.
Insidetherootmessageelement,therearethreepartstoatemplate:theformatelement,thetokenSetselementandthebodyelement.Theformatelementcontainsdefinitionsforsection,itemandtokenstyles.ThetokenSetelementcontainsalistofallofthetokenSetsassociatedwiththetemplate.Thebodyelementcontainsallofthesections,itemsandtokensthatdescribethemessageformatitself.Alloftheseelementsarecombinedwiththeirimportedparentelementsduringtheimportprocesssothatinheritancecanbeused.
Theformatelementisalistofstyledefinitions(discussedbelow)thatcanbereferredtointhebodyofthetemplate.Leaftemplatesoftendon’tcontainaformatelementbecausetheyrelyonagroupofstandard,inheritedstyles.However,youcanaddaformatelementifonedoesnotexistoraddtoanexistingonetodefinenewstyles.Onlyoneformatelementisallowedpertemplate.
ThetokenSetselementisalistofallofthetokenSetsassociatedwithatemplate.AtokenSetisalogicalgroupingoftokensthatexistsinSentryOne.YoucannotaddtokenSetstomessagesbecausethedataforthetokensinthetokenSetneedstobecreatedandassignedintheprogram.AlistofallofthetokensinthetokenSetsisavailableintheMessageEditor.OnlyonetokenSetselementisallowedpertemplate.
Thebodyelementdescribesallofthe"things"thatamessageismadeof.Thesethingscanbecategorizedasitems(andthingsthatinheritfromitems)andsections,whichareessentiallygroupsofitems.Onlyonebodyelementisallowedpertemplate.
ITEMSANDSECTIONSAnitemisthebaseelementinthebodysection.TokenItems,textItems,breakItemsandblankLineItemsarealljustspecializedtypesofitems.
TokenItemsarespecialitemsthatrepresentaname/valuepair.AcommonexampleinSentryOnemessagesis"[Condition]:SQLServer:BlockingSQL".Thename(Condition)isadescriptionofthevalue(SQLServer:BlockingSQL).ThevalueforthesetokenItemsissetduringtheprogramexecution.
MultiTokenItemsarespecialtokenItems.TheyconvertoneormoretokenItemsintoasingletokenwithspecializedformatting.Theyhavea“converter”attributewhichisthenameofaregisteredconverter,andtheyreferenceoneormoretokenItems.
SentryOne User Guide | 112
TextItemsareaspecialtypeofitemthatdisplaysaliteraltextvalue.
BreakItemsandblankLineItemsarespecializedtextItemswithpre-settextforeaseofuse.TheblankLineItemsimplyinsertsablanklineinamessage.ThebreakItemtakeswhateverthecurrentsectionformatbreakis(moreaboutthisbelow)andplacesthatinthemessage.
Asectionelementissimplyawaytogrouptheaboveitems.Sectionscanalsocontainothersections.NestedsectionsareindentedusingtheindentStylefromthecurrentsectionStyle.
ITEMANDSECTIONATTRIBUTESAllitemshavethefollowingattributes:
id:Auniquestringidentifyingtheitem.visible:Abooleanthatdeterminesiftheitemisvisibleinthemessage.before:Theidoftheitem,tokenorsectionthatthisitemshouldbeplacedbefore.after:Theidoftheitem,tokenorsectionthatthisitemshouldbeplacedafter.requires:Theidofanitem,tokenorsectionthatmustbevisibleforthisitemtobevisible.indent:Abooleanthatdeterminesiftheitemshouldbeindented.itemStyleId:TheidoftheitemStyle(format)thatshouldbeusedforthisitem.
TextItemshaveoneadditionalattribute:
text:Thetextthatwillbedisplayedinthefinalmessage.
TokenItemshaveadditionalattributes:
name:Thetokennametobedisplayedinthemessage.Ifnoneisassigned,adefaultnamebasedontheitemidisdisplayed.hideIfNoValue:Abooleanthatwhensettotrue,hidesthetokenifnovalueisassigned.tokenItemStyleId:TheidofthetokenStyle(format)thatshouldbeusedforthistoken.
MultiTokenItemshaveallofthetokenItemattributesplusanadditionalattributeandelement:
Attribute:
converter:Thenameoftheregisteredconverter
Element:
token:Anelementthatrepresentsatokentobepassedtotheconverter.Ithasasingleattribute—id—thatistheidofavalidtoken.MultiTokenItemsmayhaveoneormoretokenelements.
Sectionshavesimilarattributestoitems:
id:Auniquestringidentifyingtheitem.visible:Abooleanthatdeterminesiftheitemisvisibleinthemessage.before:Theidoftheitem,tokenorsectionthatthisitemshouldbeplacedbefore.after:Theidoftheitem,tokenorsectionthatthisitemshouldbeplacedafter.requires:Theidofanitem,tokenorsectionthatmustbevisibleforthisitemtobe
SentryOne User Guide | 113
visible.indent:Abooleanthatdeterminesiftheitemshouldbeindented.sectionStyleId:TheidofthesectionStylethatshouldbeusedforthissection.itemStyleId:TheidoftheitemStyle(format)thatshouldbeusedforthisitem.tokenItemStyleId:TheidofthetokenStyle(format)thatshouldbeusedforthistoken.
STYLESStylesareaveryimportantpartofhowmessagecustomizationworks.Therearethreetypesofstyles:sectionstyles,itemstylesandtokenstyles.ThestylesaredefinedintheformatsectionoftheXML.ThestylesarethenreferencedbytheirIDsinthesections,itemsandtokens.Thesestylesuseformatstringstoidentifyhowtochangeanitem,tokenorsectionwhenthemessageisbuilt.Theformatstringsusekeywordstorepresentthedatasoyoucanaddformattingcontentaroundthem.
Forexample,tokenstylesuse%itemname%torepresentthenameofatokenand%itemvalue%torepresentitsvalue.So,tocreatethefinishedmessagevalueof"[Condition]:SQLServer:BlockingSQL",onewouldusetheformatstring:"[%itemname%]:%itemvalue%".Ifthedesiredfinishedvaluewas"Condition-->SQLServer:BlockingSQL"theformatstringwouldneedtobechangedto"%itemname%-->%itemvalue%".Youcanalsoaddwhitespacecharacterssuchasnewline(\r\n)ortab(\t).
STYLEATTRIBUTESSectionstyles(sectionStyleelements)havethreeattributes:
id:AuniquestringidentifyingthemindentStyle:Aformatstringtodeterminehowanestedsectionshouldbeindented.
Keyword:%sectionitem%representseachiteminthesection.Example:"%sectionitem%"placesfourspacesbeforeeachiteminthesection.
formatStyle:Aformatstringtodeterminehowasectionshouldbeformatted.Keyword:%sectionitems%representstheentiresectionasawhole.Example:"%sectionitems%----------\r\n"placesalineofdashesasabreakafterthesection.
Itemstyles(itemStyleelements)havetwoattributes:
id:Auniquestringidentifyingthisstyle.indentStyle:Aformatstringtodeterminehowanitemshouldbeindented(whentheindentattributeissetto‘true’).
Keyword:%item%representstheitem.Example:"\t%item%"placesatabcharacterinfrontoftheitem.
Tokenstyles(tokenItemStyleelements)extenditemstylesandhavethreeadditionalattributes:
formatStyle:Aformatstringtodeterminehowatokenshouldbeformatted.Keywords:%itemname%representsthetokenname;%itemvalue%
SentryOne User Guide | 114
representsthevalueofthetoken.Example:"[%itemname%]:%itemvalue%"createsthestandard"[Name]:Value"tokenstyle.
itemStyleId:TheidoftheitemStylethistokenStylereferences.Becauseatokenisanitemunderneath,theformatneedstospecifytheitemstyleaswell.itemValueStyle:A.NETformatstringfortheitemvalue.Thisstringgivesyoutheabilitytoformatthetokenvalueitselfusing.NETformatstringwhichisusefulfordateornumberformatting.
Example:"0.##"formatsadecimalvaluetoamaximumoftwodecimalplaces.
CUSTOMIZINGAMESSAGE
SECTIONSOFTHEMESSAGEEDITOR
TokensPaneTheTokensPane,locatedinthetopleftcorneroftheMessageEditor,displaysalistoftokensthatareavailableforuseinthemessage.
TextItemsPaneTheTextItemsPanecontainsvariousXMLelementsthatcanbecopiedandpastedintotheMessageLevelXMLpanetoaddcustomtextandlinebreakstothemessage.
FormatsPaneTheFormatsPanecontainsXMLattributesthatcanbeusedwithanelementtoadjusttheformattingoftheelement.
MessageLevelXMLPaneTheMessageLevelXMLPaneiswhereyoucaneditthemessage.ChangesmadeinthispanearereflectedintheCompleteXMLandMessageSamplePanes.
CompleteXMLPaneTheCompleteXMLPanedisplaysthefinalproductofthetemplatedisplayedintheMessageLevelXMLPaneplusallofthetemplatesthatareimportedbyit.YoucanusethispaneasguidelinewhenmakingchangestotheMessageLevelXML.
MessageSamplePaneTheMessageSamplePanedisplaysamock-upofwhatthecompleteXMLwillbecome.
ConditionsThatUseTemplatePaneThispaneshowsalistofconditionsthatarecurrentlyusingthetemplatethatyou'reediting.Thecheckboxesgiveyoutheabilitytoquicklysaveanewtemplateandapplyittomultipleconditions.
EDITINGAMESSAGE
AddingAdditionalInformationNewitemscanbeaddedinsideoroutsideofasection.AvailablenodesarelistedintheTokensPaneandcaneitherbecopy-and-pasted,highlighted-and-dragged,ortyped
SentryOne User Guide | 115
directlyintotheeditor.Setthe"before"or"after"attributestoplacetheiteminaparticularspotinthemessage.
RemovingorHidinganItemIfanitemisonlyintheMessageLevelXML,youcansimplydeletethatnodefromtheXML.Iftheitemisinanimportedtemplate,youcanhidetheiteminthefinishedmessagebysettingthe"visible"attributetofalse.Youcanalsosetthe"hideIfNoValue"attributetotruewhichwillhidetheitemifthereisnovalueassignedtoit.
MovinganItemItemsaredisplayedinthefinalmessageastheyareplacedintheXML,toptobottom,unless"before"or"after"attributesareplacedontheitemsorsections.Thisquicklygetsconfusingwiththeinheritancechain,sotheeasiestwaytomoveanitemistosetits"before"or"after"attribute.
Adding,Hiding,orMovingaSectionSectionsarealotlikeitems(bydesign)soyoucanaddonebytypinginanew<section></section>,hideonebysettingitsvisiblepropertytofalseandmoveitbysettingits"before"or"after"attribute.
ChangingaTokenNameYoucanchangethedisplayednameofatokenbysettingits"name"property.
IndentinganItemAllitemsalreadyhaveaninheriteddefaultindentstylesoyoucansimplysetthe"indent"attributeforanitemtotrue.Forcustomindents,youcancreateanewitemStylewithyourcustomindentandapplythatstyletoabody,sectionoritem.
FormattingaTokenEachtemplatewillhaveseveralinheritedtokenstyles.TheyarelistedintheFormatsPaneoftheMessageEditor.Youcancopy-and-pasteorhighlight-and-dragtheseattributesintothebody,sectionortokenitem.Forcustomformatting,youcandefineanewtokenItemStyleintheformatsectionandsettheformatStylestringtosuityourneeds.Youcanthenreferencethisnewstylebyidintheattributesofthebody,sectionortokenItem.
Example:tokenItemStyledefinitiontogetatokenlike"{Condition}-->NameofCondition":<tokenItemStyleid="NewStyle"itemStyleId="defaultItem"formatStyle="{%itemname%}-->%itemvalue%"/>
FormattingaSectionEachtemplatewillhaveatleastoneinheritedsectionstyle.TheyarelistedintheFormatsPaneoftheMessageEditor.Youcancopy-and-pasteorhighlight-and-dragtheattributeintothebodyorsection.Forcustomformatting,youcandefineanewsectionStyleintheformatsectionandsettheformatStylestringtosuityourneeds.Youcanthenreferencethisnewstylebyidintheattributesofthebodyorsection.
ExamplesectionStyledefinitiontoreplacethestandardlineofdashesafterasectionwithalineofequalsigns:<sectionStyleid="NewSectionStyle"formatStyle="%sectionitems%=======================\r\n"indentStyle="%sectionitem%"/>
SentryOne User Guide | 116
FormattingaTokenValueYoucandefinea.NETformatstringtoformatatokenvalueitself.Thisisespeciallyusefulinformattingdatesandnumbervalues.DefineanewtokenItemStyleintheformatsection,setupthe"formatStyle"and"itemStyleId"attributes(orcopythemfromanotherstyle)andthensetthe"itemValueStyle"toa.NETformatstring.
7.3 Settings
What makes Settings especially relevant in the context of the Alerting and Response System isthatcertainSettingsdefinethecriteriaofwhenaConditionisconsideredtobemet.ThisincludesRuntime Threshold Settings.
OtherSettings,knownasSourceSettingsdefinewhateventsarecollectedbySentryOne.TheSourceSettingsdefineminimumdurationthresholdsforthecollectionofeventstakingplaceinthemonitoredenvironment.CertainSettingcontroltheSynchronizationofevents,includingHistoryFilterSettings.HistoryFiltersareavailableforselectEventSources.WithHistoryFiltersyoudefineruleswhichcontrolexactlywhattypesofeventstheMonitoringServicewritesintoEventHistoryconcerningyourmonitoredservers.IfaneventdoesnotmeetthecriteriayouhavedefinedintheHistoryFilter,informationaboutthateventisnotwrittentoyourSentryOneDatabase.
TheseSourceSettingsallhaveadirectcorrelationtoConditionsbeingmet,asaneventmustfirstbecapturedbeforeanyConditionrelatedtoitcanbeevaluated.TheseSettingincludevariousCollection Settings.
WHERETOCONFIGURESETTINGSYoucanconfigureSettingsattheGloballevel(AllTargets),Sitelevel,TargetGrouplevel,Targetlevel,Instancelevel,orattheindividualobjectlevelasapplicable.Settingsarehierarchical,andworkthroughtheprincipleofinheritance.ThismeansthatSettingsappliedattheGloballevel(AllTargets)areautomaticallyinheritedbyalltheSites,TargetGroups,Targets,Instances,andobjectsinyourenvironment.GenerallyitisagoodideatofirstconfigureyourSettingsglobally,andthenadjustindividualSettingsasneededatthelowerlevels.
HOWTOCONFIGURESETTINGSToconfigureaSettingfirstselectthedesirednodeintheNavigatorpane.Forinstance,selecttheAllTargetsnodeifyouwanttoconfigureSettingsGlobally,orselectanindividualInstancenodeifyouwouldliketoconfigureSettingsspecifictojustthatInstance.IfyoudonotseetheSettings paneonceyouhaveselectedyourdesirednodeintheNavigatorpane,usetheViewMenu(View→Settings).Nextyouwillwanttousethedrop-downlistsfoundintheSettingspane,toselecttheSettingswhichyouwouldliketoconfigure.
WithintheSettings pane,directlybeneaththedrop-downlists,thefullpathofeachSettingsgroupisdisplayed.ThispathcontainsalloftheancestorobjectsfortheselectedSetting.EachSettingalsohasanInherit From ParentflagwhichspecifiesiftheSettingisbeinginherited.WhenthisflagissettotruethenameoftheancestorobjectwhichispassingdowntheinheritedSettingswillbelisted.Forexample,ifyouinitiallyconfigureyourSettingsglobally,asyoudrilldowntotheTargetandInstancelevel,youwillseethateachchildSettingcontainsanInherit From Parent(Global):listing,withtheflagsettoTrue.ThisletsyouknowthattheseparticularSettingsarebeinginheritedfromtheGloballevel(AllTargets).
SentryOne User Guide | 117
ConfigureSettingsExample
IfyouwantedtoconfiguretheTopSQLMinimumDurationCollectionSettingGlobally:
1. SelecttheAllTargetsnodeintheNavigatorPane2. IntheSettingspane,usethetopdrop-downlistandselectSQLServerSettings.3. Usetheseconddrop-downlisttoselectTopSQLSource.YoushouldnowseetheTopSQLSourceSettingsthatarebeingappliedGlobally.
4. ChangetheMinimumDurationtothedesiredvalue,itwillbesavedautomatically.
IfyouwantedtoconfiguretheSQLServerAgentJobMaximumRuntimeThresholdPercentforanindividualInstance:
1. SelectthedesiredInstancenodeintheNavigatorpane.2. IntheSettingspane,usethetopdrop-downlistandselectSQLServerSettings.3. Usetheseconddrop-downlisttoselectSQLServerAgentJob.YoushouldnowseetheSQLServerAgentJobSettingsthatareconfiguredfortheInstance.
4. ChangetheInheritFromParentSettingtoFalse.5. ChangetheMaximumRuntimeThresholdPercenttothedesiredvalue,itwillbesavedautomatically.
COMPREHENSIVELISTINGOFSETTINGSUsethelinksbelowtojumptotheindividualtopicsformoreinformationaboutvariousSettings.YouwillfindadescriptionofeachSettingandaRelatedConditioncolumn.ThisRelatedConditioncolumncontainsalinktotheCondition(s)thatareaffectedbythespecificSettings.
SQLServerSettings
SSASSettings
WindowsSettings
ForinformationaboutFragmentationManagerrelatedSettings,includingDatabaseSourceSettingspleaseseetheFragmentationManagertopic.
GENERALINFORMATIONABOUTSELECTSETTINGSRuntimeThresholdsSettings
RuntimeThresholdscanbesetforanumberofsourcessuchasSQLServerAgentJobs.
PercentBasedAvalueforMinimumRuntimeThresholdPercentandMaximumRuntimeThresholdPercentcanbespecified.TheglobalMinimumThresholdPercentdefaultis10%.TheMaximumThresholdPercentdefaultis250%.Thismeansthatanytimeajobrunsforlessthan10%orlongerthan250%ofit'saverageruntimetheAssociatedConditionwouldbemetandanyActionsconfiguredforthatConditionwouldalsotakeplace.Iftoomanymessagesarebeingreceived,thesesettingscanbeadjustedasneeded.TimeBasedExplicit time-basedthresholds canalsobespecified. Anytimeanexplicit time-basedthresholdisspecifiedit will overridethepercentagebasedthresholdsfor that object. Time-basedthresholdsare usually less valuable at the Global level, particularly the MinimumRuntimeThreshold, which
SentryOne User Guide | 118
doesn'thavemuchvalueatallglobally.ExplicitruntimethresholdstendtobemoreapplicableattheactualInstanceorobjectlevelforoverridingtheglobalpercentagethresholdsonacase-by-casebasis.
NOTE:OnenotificationwillbesentoncetheMaximumRuntimeThresholdhasbeenmetandaseparatenotificationwillbesentonceithascompleted.
Forexample,considerajobthathasagreatdealofvolatilityinruntimesuchasatransactionlogbackup,whichcanrunforanywherebetween30secondsand30minutes,andit'saverageruntimeis 5 minutes. To avoid unnecessary percentage-based threshold notifications for the job, oneoption would be to set its Maximum Runtime Thresholdto "35 Minutes" and MinimumRuntimeThresholdto"20Seconds". This canbedonebyselectingeither thejob's nodeintheNavigatororaninstanceofthejobonthecalendar,thenfollowthesamestepsasabovetoaccessandchangethejob'sruntimethresholdsettings.
NOTE: RuntimeThresholdmessagesforReportingServicesReportscompletinginlessthantwominuteswillnotbeprocesseduntiltheyarecomplete.
PerformanceCounterThresholdSettings
screenisusedtosettheminimumandmaximumvaluesforthecounterthresholdsofthatparticularcounter.ThesewillbeusedtotriggerthePerformanceCounter:ThresholdMinandMaxconditionsifanyactionsareenabledforthem.ThisoptionisonlyavailablewhenselectingaspecificperformancecounterfromtheNavigatorPane.Therecanbeonlyoneminimumandonemaximumvalueforagivencounter,regardlessofhowmanyobjectsarelinkedtothecounter.FormoreinformationaboutPerformanceCountersseethePerformanceCounter('MonitoringEventObjectPerformance'intheon-linedocumentation)topic.
TARGETSETTINGSSetting Description Related
Condition
MaintenanceWindow
UsedtosetaschedulefortheMaintenanceWindow.OnlyLogActionswillbetriggeredforFailsafeconditionsinsidetheMaintenanceWindow.MaintenanceWindowsettingallowatimeframetobespecifiedwhiledailymaintenanceactivitiestakeplaceonthatInstance.
FormoreinformationseetheSchedulesandWindowstopic.
FailsafeConditions
EVENTCHAINSETTINGSSetting Description Related
Condition
MaximumRuntimeThreshold
DefinetheMaximumallowedruntimefortheEventChain.
EventChain:RuntimeThresholdMax
SentryOne User Guide | 119
MinimumRuntimeThreshold
DefinetheMinimumallowedruntimefortheEventChain.
EventChain:RuntimeThresholdMin
EVENTCHAINNODESETTINGSSetting Description Related
Condition
MaximumRuntimeThreshold
DefinetheMaximumallowedruntimefortheEventChainnode.
EventChainNode:RuntimeThresholdMax
MinimumRuntimeThreshold DefinetheMinimumallowedruntimefortheEventChainnode.
EventChainNode:RuntimeThresholdMin
SITESETTINGSSetting Description Related
Condition
GeneralSMTPServer TheSMTPserverorservergroupusedforemailnotifications.Seealso:SMTPConfiguration
N/A
Setting Description RelatedCondition
7.3.1 SQLServerSettings
SQLSERVERSETTINGSBlockingSQL
Setting Description RelatedCondition
MaximumDurationThreshold
SettheMaximumallowedDurationfortheobject. BlockingSQL:DurationThresholdMax
BlockingSQLSource
SentryOne User Guide | 120
Setting Description RelatedCondition
MaximumRowsToSynchronize
Setthemaximumrowsofhistoricaleventdatatocollectfromthissource. N/A
MinimumBlockDuration SetthetimethatmustelapsebeforeaBlockConditionwillbetriggered. AllBlockingSQLConditions
DatabasesSource(SeeFragmentationManagersectionforadditionaldetails)
DeadlocksSource
Setting Description RelatedCondition
MaximumRowsToSynchronize
Setthemaximumrowsofhistoricaleventdatatocollectfromthissource. N/A
HistoryFilter
Thefilterusedforhistorysynchronization.Onlyeventsthatmeetthefilterwillbewrittentothedatabase.Seealso:HistoryFilter
Note:TheDeadlocksHistoryFilteronlyimpactswhatisdisplayedontheEventCalendaranddoesnotimpactdeadlockcollection.FormoreinformationseeSynchronizationofPerformanceAnalysissourcessectionoftheHistoryfiltertopic.
N/A
CollectDeadlockEvents
Specifieswhetherdeadlockstatementcollectionisenabled. AllDeadlockSQLConditions
MaintenancePlanSource
Setting Description RelatedSettings
Auto-watchNewObjects
Specifywhetherornotnewobjectswillbesettowatchedwhentheyarediscovered.
AllMaintenancePlanConditions-AnobjectmustbewatchedinorderforConditionstobeevaluatedforit.
MaximumRowsToSynchronize
Themaximumrowsofhistoricaldatatocollectforthissource. N/A
ReportingServicesReport
Setting Description RelatedCondition
MaximumRuntimeThreshold
Definethemaximumallowedruntimefortheobject. ReportingServicesReport:RuntimeThresholdMax
MaximumRuntimeThresholdPercent
Definethemaximumallowedruntimepercentfortheobject. ReportingServicesReport:RuntimeThresholdMax
SentryOne User Guide | 121
MinimumRuntimeThreshold
Definetheminimumallowedruntimefortheobject. ReportingServicesReport:RuntimeThresholdMin
MinimumRuntimeThresholdPercent
Definetheminimumallowedruntimepercentfortheobject. ReportingServicesReport:RuntimeThresholdMin
ReportingServicesReportSource
Setting Description RelatedSettings
Auto-watchNewObjects
Specifywhetherornotnewobjectswillbesettowatchedwhentheyarediscovered.
AllReportingServicesReportConditions-AnobjectmustbewatchedinorderforConditionstobeevaluatedforit.
MaximumRowsToSynchronize
Themaximumrowsofhistoricaldatatocollectforthissource. N/A
HistoryFilterTheFilterusedforhistorysynchronization.Onlyeventsthatmeetthefilterwillbewrittentothedatabase.Seealso:HistoryFilter
N/A
SQLServerAgentAlertsSource
Setting Description RelatedCondition
Auto-watchNewObjects
Specifywhetherornotnewobjectswillbesettowatchedwhentheyarediscovered.
AllSQLServerAgentAlertConditions-AnobjectmustbewatchedinorderforConditionstobeevaluatedforit.
MaximumRowsToSynchronize
Themaximumrowsofhistoricaldatatocollectforthissource.
N/A
HistoryFilter TheFilterusedforhistorysynchronization.Onlyeventsthatmeetthefilterwillbewrittentothedatabase.Seealso:HistoryFilter
N/A
SQLServerAgentJob
Setting Description RelatedCondition
MaximumRuntimeThreshold
Themaximumallowedruntimefortheobject.SQLServerAgentJob:RuntimeThresholdMax
MaximumRuntimeThresholdPercent
Themaximumallowedruntimepercentagefortheobject.SQLServerAgentJob:RuntimeThresholdMax
Setting Description RelatedCondition
SentryOne User Guide | 122
MinimumRuntimeThreshold
Theminimumallowedruntimefortheobject.SQLServerAgentJob:RuntimeThresholdMin
MinimumRuntimeThresholdPercent
Theminimumallowedruntimepercentfortheobject.SQLServerAgentJob:RuntimeThresholdMin
QueueOthersforupto
Themaximumlengthoftimethisjobwillqueueotherjobs.SeeJobQueuingformoreinformation. N/A
Auto-StartThreshold
Anyjobwhosenextscheduledruntimeisbeyondthespecifiedthresholdwillbestartedautomaticallyuponleavingthequeue.Ifajob'snextscheduledruntimeisbeforethethresholditwillnotauto-start.
N/A
QueueType Thebehaviorwhenthisjobisqueued.SeeJobQueuingformoreinformation. SQLServerAgentJob:Queued
QueueForUpTo Themaximumlengthoftimethisjobcanqueued.SeeJobQueuingformoreinformation. N/A
Auto-StartType Controlstheauto-startbehaviorforthejobwhenitleavesthequeue."Usedefaultsetting"willcausethequeuingjob's"Auto-StartThreshold"settingtobeused. N/A
SQLSeverAgentJobsSource
Setting Description RelatedCondition
Auto-watchNewObjects
Specifywhetherornotnewobjectswillbesettowatchedwhentheyarediscovered.
AllSQLServerAgentJobConditions-AnobjectmustbewatchedinorderforConditionstobeevaluatedforit.
MissedRunThreshold
Thelengthoftimethatmustpassbeforeanobjectrunisconsideredtobemissed. SQLServerAgentJob:RunMissed
MaximumRowsToSynchronize
Themaximumrowsofhistoricaldatatocollectforthissource. N/A
SQLServerAgentLogSource
Setting Description RelatedCondition
Auto-watchNewObjects
Specifywhetherornotnewobjectswillbesettowatchedwhentheyarediscovered.
AllSQLServerAgentLogSourceConditions-AnobjectmustbewatchedinorderforConditionstobeevaluatedforit.
MaximumRowsToSynchronize
Themaximumrowsofhistoricaldatatocollectforthissource. N/A
HistoryFilterTheFilterusedforhistorysynchronization.Onlyeventsthatmeetthefilterwillbewrittentothedatabase.Seealso:HistoryFilter
N/A
Setting Description RelatedCondition
SentryOne User Guide | 123
SQLServerInstance
Setting Description RelatedCondition
Auto-enableSQLServerAgentTokens
OnSQLServer2005andabove,SQLAgentTokensaredisabledasasecuritymeasure.TheymustbeenabledtoallowSentryOnetowatchAlerts. AllSQLServer
AgentAlertConditions
Auto-recyclelargeSQLServerAgentLogs
WhetherornottoautomaticallyrecyclelargeAgentLogfiles.SentryOnepollstheAgentlogforhistorysynchronization.IfanAgentLogfilebecomestoolarge,thispollingwillcausetimeoutproblems.Topreventthis,SentryOnewillstoppollingandissueaClientAlertiftheagentlogfileexceeds1MB.Thisproblemoftenmanifestswheninformationallevelloggingisenabled.
N/A
MaximumQueueLength
Themaximumnumberofobjectsthatcanbequeuedatonetime.ThissettingalwaysappliestotheInstancelevel.
SQLServerAgentJob:Queued
SynchronizeType
ThissettingreferstohowtheSentryOneClientwillrespondifitdiscoversthedataintheSentryOneDatabaseisnotuptodate.ThedefaultistoshowamessageboxwarningoftheconditionandaskingiftheSentryOneClientshouldsynchronizetheinformationitself.
N/A
SynchronizationThreshold
TheamountoftimethatmustpasssincethelastsuccessfulsynchronizationbytheSentryOneMonitoringServicebeforetheClientattemptstosynchronizedirectlywiththetarget.
N/A
MaxDatabasestoSynchronize(largestfirst)
Themaximumnumberofdatabasestosynchronize,orderedbytotalsize.Thisincludessystemdatabases. N/A
MaxUserDatabaseFilestoSynchronize(mostactivefirst)
Themaximumnumberofuserdatabasefilestosynchronize,orderedbyhighestactivity.Activityisdefinedbynumberofbytesreadandwritten.Thisnumberexcludessystemdatabaseswhichareautomaticallyincludedinthesynchronization.
N/A
MaintenanceWindow
UsedtosetaschedulefortheMaintenanceWindow.OnlyLogActionswillbetriggeredforFailsafeconditionsinsidetheMaintenanceWindow.MaintenanceWindowsettingallowatimeframetobespecifiedwhiledailymaintenanceactivitiestakeplaceonthatInstance.
FormoreinformationseetheSchedulesandWindowstopic.
FailsafeConditions
TopSQL
Setting Description RelatedCondition
MaximumRuntimeThreshold
Themaximumallowedruntimefortheobject.Thisdefaultvalueis1hour.
TopSQL:RuntimeThresholdMax
TopSQLSource
SentryOne User Guide | 124
Setting Description RelatedCondition
MaximumRowstoSynchronize
Themaximumrowsofhistoricaldatatocollectforthissource. N/A
MinimumDuration
TheMinimumDurationsettingdeterminestherequireddurationforaTopSQLeventtobecollected.Thedefaultsettingis5seconds.Forsafetyreasons,itcannotbereducedbelow100msunlessoneoftheCPU,ReadsorWritesfiltersis>0.
AllTopSQLConditions
MinimumCPU TheminimumrequiredCPUforastatementtobelogged.*
AllTopSQLConditions
MinimumReads Theminimumrequiredreadsforastatementtobelogged.*
AllTopSQLConditions
MinimumWrites Theminimumrequiredwritesforastatementtobelogged.*
AllTopSQLConditions
CollectTraceEvents
SpecifywhetherornottocollectTraceEvents.IfCollectTraceEventsisdisabled,SentryOnewillnotstartatraceorcollectanyTopSQLeventsfromamonitoredtarget. N/A
CollectStatementEvents
SpecifywhetherornottocollectStatementEvents.IfCollectStatementEventsisdisabled,statement-levelinformationwillnotbeavailableinthePlanExplorerStatementsTreewhenviewingaqueryplan.
WARNING:Onsystemswithveryhightransactionvolumesthatalsomakeextensiveuseofscalarfunctions,enablingCollectStatementEventsmaycauseanegativeimpactontheperformanceofthemonitoredtarget,regardlessoftheeffectiveTopSQLfiltersettingsorthenumberofeventsactuallycollected.Seealso:Performanceimpact:SQLtraceanduserdefinedscalarfunctions
N/A
CollectExecutionPlans
SpecifywhetherornottocollectExecutionPlans.IfCollectExecutionPlansisdisabled,TopSQLeventcollectionwilloccurasnormal,howeverqueryplaninformationwillnotbeautomaticallycollectedforthoseevents.PlaninformationcanstillbecollectedondemandfromwithinaPlanExplorersession,however.
N/A
MaxPlanSizetoCollect(MB)
SpecifiesthemaxplansizetocollectinMB.Defaultvalueis3. N/A
RunningEventsPollingInterval
Specifieshowoftentheservicechecksforrunningevents. N/A
CollectQueryStats
Specifieswhetherquerystatscollectionisenabled.ThissettingmustbesettoTrueforProcedureStatsandQueryStatstofunction.
N/A
QueryStatsSampleInterval
Specifieshowoftentosamplequerystats. N/A
FilterTimeSpan SpecifiesthebaselengthoftimeoverwhichthecollectionfilterswillbeappliedtoQueryStats. N/A
FilterFactor TheFilterFactoriscalculatedbydividingtheQueryStatsSampleIntervalbytheFilterTimeSpan.The N/A
SentryOne User Guide | 125
collectionfilterssuchasMinimumDurationaremultipliedbythisvaluewhenappliedtoQueryStatscollection.
TopSQLSourceNote:
ThereisanANDrelationshipthatexistsbetweentheMinimum Duration,Minimum CPU,Minimum Reads,andtheMinimum WritesCollectionSettings.Thismeans,thatinordertobecollectedasTopSQL,theeventwillneedtosatisfyeachindividualCollectionSetting.Forexample,ifyousettheMinimumDurationat10secondsandtheMinimumReadsat25,aneventwouldneedtomeetbothaMinimumDurationof10secondsANDaMinimumReadsof25tobecapturedinTopSQL.
Minimum Durationcannotbesetbelow100msunlessMinimum CPU,Minimum Reads,orMinimum Writesisgreaterthan0.Thislowerlimitisenforcedbecausesettingthisthresholdsbelow100msforanextendedperiodoftimecoulddramaticallyincreasethevolumeofdatacollectedandstoredbySentryOne,andhaveanegativeimpactonthemonitoredserver.SentryOne'sQuickTracefunctionalityisbettersuitedtoanalyzeextremelyshortdurationevents.
Setting Description RelatedCondition
7.3.2 SSASSettings
SQLSERVERANALYSISSERVICESSETTINGSAnalysisServicesInstance
Setting Description RelatedCondition
CollectMemorybyCategoryData
EnableordisableMemorybyCategoryData.ThissettingisusedtoprovidemoredetailthanthebasicCleanermemorydata,butishigheroverheadtocollect.Usecautionwhenenablingtoensureitdoesnotimpactperformance.ThedefaultvalueforthissettingisFalse.
N/A
SynchronizeType
ThissettingreferstohowtheSentryOneClientwillrespondifitdiscoversthedataintheSentryOneDatabaseisnotuptodate.ThedefaultistoshowamessageboxwarningoftheconditionandaskingiftheSentryOneClientshouldsynchronizetheinformationitself.
N/A
SynchronizationThreshold
TheamountoftimethatmustpasssincethelastsuccessfulsynchronizationbytheSentryOneMonitoringServicebeforetheClientattemptstosynchronizedirectlywiththetarget.
N/A
MaintenanceWindow
UsedtosetaschedulefortheMaintenanceWindow.OnlyLogActionswillbetriggeredforFailsafeconditionsinsidetheMaintenanceWindow.MaintenanceWindowsettingallowatimeframetobespecifiedwhiledailymaintenanceactivitiestakeplaceonthatInstance.
FailsafeConditions
SentryOne User Guide | 126
FormoreinformationseetheSchedulesandWindowstopic.
TopCommands
Setting Description RelatedCondition
MaximumRuntimeThreshold Definethemaximumallowedruntimefortheobject.
TopCommands:RuntimeThresholdMax
TopCommandSource
Setting Description RelatedCondition
MaximumRowstoSynchronize.
Themaximumrowsofhistoricaleventdatatocollectfromthissource. N/A
HistoryFilter Thefilterisusedforhistorysynchronization.Onlyeventsthatmeetthefilterwillbewrittentothedatabase.Seealso:HistoryFilter
N/A
MinimumDuration Settheminimumrequireddurationforastatementtobelogged.AllTopCommandsConditions
CollectMDX/DMX/XMLAEvents Specifieswhethercommandcollectionisenabled. N/A
Setting Description RelatedCondition
7.3.3 WindowsSettings
WINDOWSSETTINGSWindowsInstance
Setting Description RelatedCondition
SynchronizationType
ThissettingreferstohowtheSentryOneClientwillrespondifitdiscoversthedataintheSentryOneDatabaseisnotuptodate.ThedefaultistoshowamessageboxwarningoftheconditionandaskingiftheSentryOneClientshouldsynchronizetheinformationitself.
N/A
SynchronizationThreshold
TheamountoftimethatmustpasssincethelastsuccessfulsynchronizationbytheSentryOneMonitoringServicebeforetheClientattemptstosynchronizedirectlywiththetarget.
N/A
SentryOne User Guide | 127
MaintenanceWindow
UsedtosetaschedulefortheMaintenanceWindow.OnlyLogActionswillbetriggeredforFailsafeconditionsinsidetheMaintenanceWindow.MaintenanceWindowsettingallowatimeframetobespecifiedwhiledailymaintenanceactivitiestakeplaceonthatInstance.
FormoreinformationseetheSchedulesandWindowstopic.
FailsafeConditions
CollectProcesses Specifieswhetherprocesscollectionisenabled. N/A
UncategorizedProcessFilter
Thefiltercontrolswhichuncategorizedprocessesarecollected.Categorizedor"well-known"processesarealwayscollected.SeeAlso:Processes
N/A
WindowsEventLogsSource
Setting Description RelatedCondition
Auto-watchNewObjects Specifywhetherornotnewobjectswillbesettowatchedwhentheyarediscovered.
AllWindowsConditions-AnobjectmustbewatchedinorderforConditionstobeevaluatedforit.
MaximumRowstoSynchronize
Themaximumrowsofhistoricaldatatocollectforthissource. N/A
HistoryFilter SeeHistoryFilterandWindowsEventLogssourcetopic.WindowsEventlog:Event
WindowsTask
Setting Description RelatedCondition
MaximumRuntimeThreshold Themaximumallowedruntimefortheobject.
WindowsTask:RuntimeThresholdMax
MaximumRuntimeThresholdPercent Themaximumallowedruntimepercentagefortheobject.
WindowsTask:RuntimeThresholdMax
MinimumRuntimeThreshold Theminimumallowedruntimefortheobject.
WindowsTask:RuntimeThresholdMin
Setting Description RelatedCondition
SentryOne User Guide | 128
MinimumRuntimeThresholdPercent Theminimumallowedruntimepercentagefortheobject.
WindowsTask:RuntimeThresholdMin
WindowsTaskSource
Setting Description RelatedCondition
Auto-watchNewObjects Specifywhetherornotnewobjectswillbesettowatchedwhentheyarediscovered.
AllWindowsTaskConditions-AnobjectmustbewatchedinorderforConditionstobeevaluatedforit.
MaximumRowstoSynchronize
Themaximumrowsofhistoricaldatatocollectforthissource. N/A
Setting Description RelatedCondition
7.4 ResponseRulesets
ResponseRulesetscontrolhowoftenActionsaretakeninresponsetoConditions.ThedefaultrulesetisNotify Every Time,meaningthattheActionwillbetakeneverytimetheConditionismet.Response Rulesetsallow for an extra level of configurability for certain notifications. They do thisby allowing you to define additional criteria that must be met in order for the Action to be taken.
For example, you may receive false-positive Database Offline/Online messages throughout theday on servers/networks that are highly utilized. An example Response Ruleset for this scenariomight specify that this Condition must be true for 5 minutes before an email is to be sent.Additionally you can specify under what criteria subsequent actions for this same Condition occur.
Actions and their configured Response Rulesets have a hierarchical configuration. When youconfigure an Action with a Response Ruleset the Action and the Action's Response Ruleset willbe inherited by each object below that level. For a visual representation of how inheritance workswithin SentryOne see the Alerting and Response System Hierarchy diagram.
Response Rulesets can be a powerful tool to help you fine tune alerts. Response Rulesetsare available globally, meaning the same Response Ruleset can be applied to multipleConditions. Keep in mind that any changes to a Response Ruleset will affect every Conditionwhere the Response Ruleset has been applied.
Windowsarealsoavailabletohelpyoufinetunealertinginyourenvironment.WindowsmaybeapplieddirectlytoanyconfiguredActiontocontrolthetimeframeofwhenthatActionwillbeprocessed.YoumayapplyaWindowintheResponse Ruleset tabofanyconfiguredAction.FormoreinformationaboutconfiguringWindowsseetheSchedulesandWindowstopic.
RULESETTYPESThere are two Ruleset types, Count Based and Time Based.
SentryOne User Guide | 129
RulesetType Description
CountBased
With Count Based Rulesets you can control:
HowmanytimesaConditionmustoccurwithinaspecifiedtimeframebeforeActionsaretaken.HowmanytimesaConditionmustreoccurbeforesubsequentActionsaretaken.HowlongtocontinuetakingactionwhenaConditionisoccurring.
SeetheResponseRulesetCountBasedexampleformoreinformation.
TimeBased
WithTimeBasedRulesetsyoucancontrol:
HowlongaConditionmustexistbeforeactionsaretaken.Howmuchtimemustelapsebeforesubsequentactionsaretaken.HowlongtocontinuetakingactionwhenaConditionisoccurring.
SeetheResponseRulesetTimeBasedexampleformoreinformation.
RESPONSERULESETEXAMPLESForexampleusescenariosseetheResponseRulesetExamplestopic.
RULESETMANAGEMENTResponseRulesetscanbemanagedusingtheToolsmenu→ManageResponseRulesetcommand.Inthiswindowyoucancreate,edit,anddeleterulesets.YoucanalsoassignrulesetstoalloftheActionsconfiguredwithinyourenvironment.Once a Response Ruleset has beendefined, it can be associated with a Condition.
Response Rulesets can also be managedforindividualActionsfromtheResponseRulesettabfoundwithintheActionPane.
CREATE A NEW RESPONSE RULESETTo create a new Response Ruleset from within the Manage Response Ruleset dialogue select theNew Ruleset button.Choose a name for the Response Ruleset. Next use the Ruleset Type boxto select either a Count based or Time Based ruleset.Depending on which Ruleset type you arecreating the configuration options will be as follows.
Ruleset Configuration Options
SentryOne User Guide | 130
CountBased ConfigurationOptions
ProcessActionsAfter:
Occurrences–numberoftimestheeventmustoccurpriortoprocessingactions.
Within(checked)–thewindowoftimeinwhichtheeventsneedstooccur.
Within(notchecked)–ignoretimelimit,enablesubsequentactions.
ProcessSubsequentActionsEvery:
Occurrences–numberoftimestheeventmustoccurpriortoprocessingsubsequentactions.
Forupto–howlongtofollowthesubsequentactionssettingbeforestartingrulesetover.
TimeBased ConfigurationOptions
ProcessActionsAfter:
Theamountoftimeaconditionmustexistpriortoprocessingactions.
ProcessSubsequentActionsEvery:
Theamountoftimeaconditionmustcontinuetoexistbetweenprocessingactions.Forupto–howlongtofollowthesubsequentactionssettingbeforestartingrulesetover.
SentryOne User Guide | 131
Note:ModificationstoaResponseRulesetwilltriggeranAuditCondition.
ASSIGN A RESPONSE RULESET TO AN ACTIONYou can assign a Response Ruleset to an Action from within the Manage Response Rulesetdialogue as follows.
1. OpentheManageResponseRulesetdialogue.(Toolsmenu→ManageResponseRuleset)2. Select any Action found within the Configured Actions section.3. Select the drop-down arrow in the Ruleset column to see Response Rulesets applicable for
the Action.4. ClickontheResponseRulesetthatyouwouldliketoapply.
YoucanalsoassignaResponseRulesettoanActionfromtheResponseRulesettabfoundwithintheActionPane.
1. IntheNavigatorPaneselectthenodeappropriatetothelevelthatyouwouldliketoconfiguretheActionfor.
2. SelecttheActionthatyouwouldliketoapplyarulesetforintheConditionspane.(Viewmenu→General/Failsafe/AuditActions)
3. SelecttheRulesetstabfounddirectlybeneaththeAction.4. ClickontheResponseRulesetthatyouwouldliketoapply.
BESTPRACTICESFORUSINGRESPONSERULESETSNameglobalrulesetsbytheirbehavior.Namecustomrulesetsbytheobjectandevent/conditiontheyapplyto.Usecountbasedrulesetsforeventdrivenrules.Usetimebasedrulesetsforconditiondrivenrules.
7.4.1 ResponseRulesetExamples
ResponseRulesetscontrolhowoftenActionsaretakeninresponsetoConditions.ThedefaultrulesetisNotify Every Time,meaningthattheActionwillbetakeneverytimetheConditionismet.Response Rulesetsallow for an extra level of configurability for certain notifications. They do thisby allowing you to define additional criteria that must be met in order for the Action to be taken.ForageneraloverviewseetheResponseRulesettopic.
COUNTBASEDEXAMPLE:AsareminderwithCountBasedRulesetsyoucancontrol:
HowmanytimesaConditionmustoccurwithinaspecifiedtimeframebeforeActionsaretaken.HowmanytimesaConditionmustreoccurbeforesubsequentActionsaretaken.HowlongtocontinuetakingActionwhenaConditionisoccurring.
ThisCountBasedRulesetExampledealswithaSQLServerAgentjobthatoftenfails.
Forthisexampleassumethefollowing:
YouhaveaSendEmailActionconfiguredattheInstancelevelfortheSQLServerAgentJob:FailureCondition.ThereisaSQLServerAgentJobFrequentJob,thatrunseveryminute.The
SentryOne User Guide | 132
occasionalfailureisexpectedandcanbedisregardedbutifthisjobbeginsfailingrepeatedlyitusuallyindicatesthereisaproblem.
Topreventgettinganalertoneveryfailure,youcouldsetaResponseRulesettolimittheprocessingoftheSend Email ActionfortheSQL Server Agent Job: Failure Conditionsothatanemailwasonlysentafterthejobfailedmultipletimeswithinaspecifiedtimeframe.FortheexamplewewilldothisbyconfiguringaCountBasedResponseRulesetthatwillrequirethejobtofail3timeswithin5minutes.
ToaccomplishthisyouneedtoapplyaCountBasedResponseRulesetatthejoblevel(FrequentJob).YouwillwanttoapplythisResponseRulesetattheindividualjoblevelasopposedtotheInstanceleveltoavoidsuppressingemailnotificationsfortherestofyourAgentJobsbelongingtothatInstance.
FirstyouwillwanttoconfigureaSend Email ActionfortheSQL Server Agent Job: FailureConditionfortheAgentJobFrequentJob.
1. SelecttheFrequentJobnodeintheNavigatorPane.2. NextopentheGeneralActionssectionintheConditionspane.IfyoudonotseetheConditionspaneusetheViewmenu->Conditions.
3. ClicktheAddbuttonfoundintheExplicitsectionoftheGeneralActionssection.ThiswillopentheSelectActionwindow.
4. ExpandtheSQL Server Agent Job: Failure Condition.UsethecheckboxtoselecttheSendEmail Action.ClicktheOKbuttontoaddtheconfiguredaction.BesuretospecifyaSelected TargetintheActionSettingstab.
NextyouwillwanttoapplyaResponseRulesettotheconfiguredAction.
1. SelecttheconfiguredemailactionintheExplicitsectionoftheConditions pane.2. SelecttheResponseRulesetstabfounddirectlybeneaththeExplicit sectionoftheConditions pane.YoushouldseethatthedefaultResponseRuleset,Notify Every Timeisapplied.ClicktheNewbuttontoopentheResponse Ruleset Editor.
3. GivetheResponseRulesetaname,rememberingthatitisabestpracticetonameacustomrulesetbytheobjectandConditionthatitappliesto.
4. FillintheinformationasspecifiedaboveandclicktheSavebuttontoapplythenewlycreatedResponseRulesettotheconfiguredAction.
SentryOne User Guide | 133
NowthattheSend Email ActionconfiguredfortheSQL Server Agent Job: Failure ConditionhastheaboveResponseRulesetapplied,anemailwillonlybesentalertingyouthattheFrequentJobfailed,ifitdoesso3timeswithin5minutes.
OnlytheSQLAgentJobFrequentJobwillbeimpactedbythischange.OtherAgentJobswouldstillbesubjecttotheSend Email ActionconfiguredattheInstancelevelwhichhasthedefaultResponseRulesetofNotify Every Time.
Considerthefollowing:
WiththisrulesetinplaceontheSendEmailAction,youcouldstillhavethefailureexecutetheLogToDatabaseActionusingthedefaultruleset.Thiswayeveryfailurewouldberecorded.
YoucouldalsoapplyanadditionalSendEmailActionfortheSQL Server Agent Job:Failure Conditionwithadifferentruleset.Thiscouldbeusefulforescalationpurposesorifadifferentteammemberpreferstobenotifiedeverytimethejobfails.
TIMEBASEDEXAMPLE:WithTimeBasedRulesetsyoucancontrol:
HowlongaConditionmustexistbeforeActionsaretaken.HowmuchtimemustelapsebeforesubsequentActionsaretaken.HowlongtocontinuetakingActionwhenaConditionisoccurring.
ThisTimeBasedRulesetExampledealswithInstanceOffline/OnlineAlerts.
Forthisexampleassumethefollowing:
YouhaveaSendEmailActionconfiguredattheGloballevelfortheSQLServer:OfflineCondition.
YouhaveaSite,TransientSiteinyourenvironmentthatcontainsseveralInstances.YouarebeingalertedbyemailthattheseInstancesaregoingOfflineandOnline,butwhenyouchecktheseInstancestheseseemtobefalsenotifications.ThiscanhappeniftherearetransientnetworkissuesandtheMonitoringServiceisunabletoconnecttotheMonitoredServers.Iftheseproblemsaretrulytransient,youmaynotnecessarilywanttobenotifiedeverytimethishappens.
TopreventgettinganalertforeveryoccurrenceofthesetransientnetworkissuesyoucouldsetaResponseRulesettolimittheprocessingoftheSend Email ActionfortheSQL Server Instance:Offline Condition.ThisResponseRulesetwouldaddadditionalcriteriatotheprocessingoftheSendEmailActionsothatanemailisonlysentaftertheInstancewasdetectedtobeinanofflinestateforaspecificperiodoftime.
Forthisexamplewewilldothisby:
SentryOne User Guide | 134
1. ConfiguringaTimeBasedResponseRulesetthatwillrequiretheSQL Server: OfflineConditiontobetruefor5minutes.
2. DisablingtheSQLServerInstance:OnlineCondition.
ToaccomplishthisyouwouldneedtoapplyaTimeBasedRulesetattheSite levelfortheTransientSite.YouwillwanttoapplythisResponseRulesetattheSite levelasopposedtotheGlobal leveltoavoidsuppressingemailnotificationsabouttherestofyourInstancesgoingofflineandonline.
FirstyouwillwanttoconfigureaSend Email ActionfortheSQL Server Instance: Offline ConditionattheTransientSitelevel.
1. SelecttheTransientSitenodeintheNavigatorPane.2. NextOpentheFailsafe Actions sectionintheConditionspane.IfyoudonotseetheConditionspaneusetheViewmenu->Conditions.
3. ClicktheAddbuttonfoundintheExplicit sectionoftheFailsafe Actions section.ThiswillopentheSelect Action window.
4. ExpandtheSQL Server Instance: Offline Condition.UsethecheckboxtoselecttheSendEmail Action.ClicktheOKbuttontoaddtheconfiguredaction.BesuretospecifyaSelected TargetintheActions Settings tab.
NextyouwillwanttoapplyaResponseRulesettotheconfiguredAction.
1. SelecttheconfiguredemailactionintheExplicit sectionoftheConditions pane.2. SelecttheResponse Ruleset tabfounddirectlybeneaththeExplicit sectionoftheConditions pane.YoushouldseethatthedefaultResponseRuleset,Notify Every Timeisapplied.ClicktheNewbuttontoopentheResponseRulesetEditor.
3. GivetheResponseRulesetaname,rememberingthatitisabestpracticetonamecustomrulesetbytheobjectandconditionthatitappliesto.
.
4. FillintheinformationasspecifiedaboveandclicktheSavebuttontoapplythenewlycreatedResponseRulesettotheconfiguredAction.
NowthattheSend Email ActionconfiguredfortheSQL Server Instance: Offline ConditionhastheaboveResponseRulesetapplied,anemailwillonlybesentalertingyouthatoneoftheInstancesbelongingtotheTransientSiteisoffline,ifitisdetectedtobeinthatstateforlongerthan5
SentryOne User Guide | 135
minutes.Youwillreceiveanadditionalemailevery10minutesforupto1dayaslongastheInstanceremainsoffline.
NextwewilldisabletheSend Email ActionfortheSQL Server Instance: Online ConditionattheTransientSitelevel.ThiswillstopanySQLServeronlineemailnotifications.WedothisbecausewiththeaboveResponseRulesetapplied,onceyoustopreceivingemailsfortheSQLServer Instance: Offline ConditionyouwillknowthattheServerisonlineagain.
TodisabletheSend Email ActionfortheSQL Server Instance: Online ConditionattheTransientSiteLevel.
1. SelecttheTransientSitenodeintheNavigatorPane.2. NextopentheFailsafeActionssectionintheConditionspane.IfyoudonotseetheConditions paneusetheViewMenu->Conditions.
3. ExpandtheSQL Server Instance: Online Condition.UsethecheckboxtoselecttheSendEmail Action.ClicktheOKbuttontoaddtheaction.
4. SelecttheconfiguredemailactionintheExplicit SectionoftheConditions pane.IntheBehavior columnselectthedropdownboxandchoosetheDisabledbehavior.FormoreaboutactionbehaviorsseetheActionstopic.
Considerthefollowing:
YoumayalsowanttofollowthesameproceduresfortheSQL Server Agent:Offline/OnlineConditions,byapplyingthesameResponseRulesetfortheOfflineConditionanddisablingtheOnlineCondition.
BydefaultallFailsafeConditionsareconfiguredwithaLogToDatabaseAction,soyouwillalwayshavearecordofeachtimetheSQL Server Instance: Offline Conditionismetifyouneedtoreviewit.
YoucouldalsoapplyanadditionalSendEmailActionforthevariousOffline/OnlineConditionswithadifferentResponseRuleset.Thiscouldbeusedforescalationpurposesintheeventofanlongtermserveroutage.
7.5 OutputContentMatch
TheOutputContentMatchconditionsallowyoutoassignanactionbasedonamatchoftheoutputtextofaneventobject.Thisfeatureallowsyoutowatchforspecializedconditionsthatmaynototherwisebedetected.ThismayproveusefulwhenhandlingexitcodesfromWindowsTasks.
ConditionSettingfiltersintroducedinv7.2offeragreaterdegreeofflexibilityinmanagingAlerts.
SETTINGUPACTIONSFORTHEOUTPUTCONTENTMATCHCONDITIONOutputContentMatchActions,likeallotherGeneralActions,canbesetupfromthegloballeveltotheindividualeventobjectlevel.AfterselectingtheappropriatenodeontheNavigatorpane,selectAddintheConditionspane.ThiswillbringuptheActionsSelectordialog.ExpandthedesiredObjectandOutputContentMatchCondition.NextselectthedesiredActiontobecompletedwhentheConditionismet,andselectOKontheActionsSelector.OutputContentMatchoptionscanbeaccessedintheConditionSettingstab.
SentryOne User Guide | 136
ClickingtheEditbuttonintheConditionSettingstabwillbringuptheContentMatchCriteriaform.Fromhereyoucanspecifyallconditionstheoutputtextfromtheobjecthastomeetbeforerespondingwiththedesiredaction.Thematchedtextcaneitherbeintheformofastringliteral,oryoucanenteraregularexpression.Touseregularexpressions,prefixthematchstringwith"regex:",i.e."regex:[a-z]*"tomatchanycharactera-z.ClickOKandtheActionisenabled.
NOTE:TheStepNamelistboxisonlyavailablewhensettingmatchcriteriaforanindividualSQLAgentJob.
CONDITIONINHERITANCEAllOutputContentMatchcriteriacanbesetatthegloballevelandwillbeinheritedlikeanyothersetting.Itisimportanttonote,however,thatanymatchcriteriadefinedatalowerlevelwilleffectivelyoverridetheinheritedcriteria.Evenifthereisnotamatchatthatlevel,SentryOnewillnotlookfurtheruptheinheritancechaintoseeifthereareanyothermatchcriteriasetatahigherlevel.Inheritedactions,however,willremainenabled.
Forexample,aSendEmailactionisconfiguredatthegloballevelfortheSQLAgentJob:OutputContentMatchconditionwhenthetextstring"overflow"appearsinanyjob'soutputtext.YouthenclickonyourDataImportjobonServerAandenableaLogtoDatabaseactionfortheSQLAgentJob:OutputContentMatchconditionandchangethematchcriteriaforthisjobto"insufficient".Fromnowon,theonlytextstringthatwillbecheckedwhentheDataImportjobrunsis"insufficient".Evenifthatstringisnotfounditwillnotlookforthe"overflow"stringsetatthegloballevel.However,ifthe"insufficient"stringismatchedforthatjob'soutput,boththeSendEmailandLogtoDatabaseactionswillbetaken.
WhenyouoverridetheOutputContentMatchsettingsatalowerlevel,youwillbepromptedifyouwantusethehigherlevelOutputContentMatchcriteriaasthebaselineforthissetting.ThisfeaturewasaddedbecauseoftenwhenoverridingtheOutputContentMatchcriteria,onlyminorchangesarerequired,sothisfeaturecansaveyoualotofworkwhenmanycontentmatchstringsareinvolved.
SentryOne User Guide | 137
8 SentryOneEventCalendar
Appliesto:SQLSentry,WinSentry,BISentry,DBSentry,DWSentry,APSSentry*Somefeaturesmaynotbeavailabletoalltargettypes.Pleasereadfurtherformoredetail.
OPENINGTHEEVENTCALENDARTheSentryOneEventCalendarcanbeopenedbyselecting(Open→ Event Calendar) from thecontext menu of any applicable node in the Navigator pane. It can also be opened by double-clicking the Instance and choosing Event Calendar from the product selection form.
HISTORYFILTERHistoryFilter
FilterEditor
EVENTMANAGERVIEWSTheCalendarViewisthedefaultviewdisplayedintheWorkspaceArea.TheListViewdisplaysalleventdatainalistformat.
PERFORMANCEMONITORINGWITHEVENTSThefollowingtopicscoverperformancemonitoringwithSentryOneEvents.
CustomEventViewsWorkingWithCustomEventViewsFilteringProcessFilterProcessFlowchartLevelingBackupsAcrossaSANorNAS
CUSTOMEVENTVIEWSCustomEventViews
WorkingWithCustomEventViewsFilteringProcessFilterProcessFlowchartLevelingBackupsAcrossaSANorNAS
CHAININGANDQUEUINGChainingandQueuing
EventChainsJobQueuing
8.1 HistoryFilter
SentryOneprovidesadvancedsourcehistoryfilteringforyourmonitoredTargetsandInstances.SourceHistoryFilterSettingsareavailableinthesynchronizationgroupforselectEventSources(View→Settings).
WiththeHistoryFilteryoudefineruleswhichcontrolexactlywhattypesofeventstheMonitoring
SentryOne User Guide | 138
ServicewritesintoEventHistoryconcerningyourmonitoredservers.IfaneventdoesnotmeetthecriteriayouhavedefinedintheHistoryFilter,informationaboutthateventisnotwrittentoyourSentryOneDatabase.
UsingtheHistoryFilteryoumaychoosetoignorecertaintypesofevents,asyoucanfilteronmultiplecolumnsincludingDuration,MessageText,andRunStatus.Thefilterwasdesignedwithflexibilityinmind.YoumaydefineafilterassimpleasEventDurationbeinggreaterthan5seconds,oryoumaychoosetocreatecomplexfilterconditions,usingconditionalgroupsandmultiplelogicaloperators.
Dependingonyourenvironmentandthetypeofinformationyoucollect,usingaHistoryFilterwiththevariousEventSourcescanalsodecreasethesizeofyourSentryOneDatabase.Onbusyservers,applyingaHistoryFiltertailoredforthosespecificenvironmentscanalsosignificantlyreducetheamountofnoise,leavingyouwithasmallersetofactionableinformation.OnepowerfulapplicationofthesourceHistoryFilteristhatitcanbeusedwiththeWindowsEventLogssource.TheWindowsEventLogssourceisavailablewhenyouaremonitoringyourcomputerwithWinSentry.
Ifyouarelookingformorecontroloveralerts,keepinmindConditionSettings,whichgiveyougranularcontroloverwhatyouarebeingalertedaboutwithinyourenvironment.
CONFIGURINGHISTORYFILTERSTheSourceHistoryFilterSettingsareavailableinthesynchronizationgroupforselectEventSources(View→Settings).PleaseseetheFilterEditortopicfordetailsaboutusingtheFilterEditor,includingcontextmenuinformation.
SYNCHRONIZATIONOFPERFORMANCEANALYSISSOURCESItisimportanttounderstandthattheHistoryFiltersynchronizationsettingsforDeadlocksaffectonlywhatisdisplayedontheEventCalendaranddoesnotimpactwhatisactuallycapturedordisplayedwithinSQLSentry.
ThisisbecausethesynchronizationoftheDeadlockssourceusesadifferentprocessthanthosesourceswhicharestrictlyEventCalendaronly.ThisdataisfirstwrittentovariousPerformanceAnalysisspecifictableswithintheSentryOneDatabase,andisthenusedtopopulatethePerformanceAnalysisDeadlockstab.
ThisdataisthencorrelatedandwrittenintoEventCalendartablesaccordingtoyourdefinedsynchronizationsettings,includinganyfiltersyouhavespecifiedwiththeHistoryFilter.ThisEventHistorydataisusedtopopulatetheEventCalendar,showingyouDeadlocksalongsideyourregularlyscheduledAgentJobsandvariousothereventobjects.
IfyouarelookingformorecontroloveralertsrelatedtoPerformanceAnalysissources,keepinmindConditionSettings,whichgiveyougranularcontroloverwhatyouarebeingalertedaboutwithinyourenvironment.ConditionSettingsallowyoutobuildcomplexalertcriteriaforConditions,includingthoserelatedtoTopSQL,BlockingSQL,andDeadlocks.
8.1.1 FilterEditor
SentryOneallowsyoutobuildcomplexfiltersforthepurposesofHistoryFilteringanddefiningConditionSettings.ThistopiccoversthefunctionalityoftheFilterEditor,whichis
SentryOne User Guide | 139
commontobothHistoryFilteringandConditionSettings.
Note:TheFilterEditoriscase-insensitiveforallstringcomparisons.
FILTEREDITOROVERVIEWThebelowdiagramidentifiesthevariousaspectsoftheFilterEditor.
FILTERRULESUsingtheFilterEditor,youbuildcriteriathataneventmustmeetbydefiningrules.
Eachfilterruleismadeupofthreedistinctparts.
1. First,youdefinethescopeoftherule,byspecifyingacolumnname.2. Secondly,youselectanoperator(criteriaoperator)whichdefinesaninstructionfortestingthevalue(operandvalue).
3. Finally,youenterthevalue(operandvalue)forthisfilterrule.
RULEGROUPSIndividualrulesarelogicallygroupedintorulegroups.Eachgroupcontainsalogicaloperatorwhichdefineshowtherulesarecombinedwithinthegroup.UponcreationeachgroupwillusetheAndlogicaloperator.WhenagroupiscreatedwiththeAndlogicaloperatoreachfilterrulethatispartofthegroupmustbetrueinorderforthegrouptoevaluateastrue.Youmaychangethelogicaloperatordefinedforagroupbyfirstclickingit;adropdownmenuwillappear,allowingyoutochooseanalternative(And,Or,NotAnd,NotOr).
CONTEXTMENUSWhenyouclickonanylogicaloperatoradditionaloptionsareavailablefromthedrop-downmenu.
TheAddConditioncommandwilladdanewfilterruletotheconditiongroup.TheAddGroupcommandwillcreateanewsub-groupbeneaththeexistinggroupwiththedefaultAndlogicaloperator.TheRemoveGroupcommandwilldeletetheselectedgroup.TheClearAllcommand,availablefromtherootlogicaloperator,willdeleteallfilterrules.
Selectingtheplus+symbolnexttoanygroup'slogicaloperatorwilladdanewfilterruletothegroup.Selectingthexsymbolnexttoanyfilterrulewilldeletethatrulefromthegroup.
SentryOne User Guide | 140
8.2 CalendarView
TheCalendarViewisthedefaultdisplayintheWorkspaceArea.Itcombinesbothhistoricalandfutureeventdatatopresentanaccuratevisualrepresentationoftheschedule.Visualindicatorshighlightoverlappingactiveeventinstances,eventstatus,andduration.Additionaldetailinformationisavailablewithasingleclickviapopupwindows.Youcanusedrag-and-droptoreschedulefuturejobsortasksinorderto"level”aschedule,thusminimizingcontentionbetweenmultipleeventsfightingforthesameresources.
TonavigatetotheCalendarView,double-clickonanyroot,group,Instance,source,object"EventView",orCustomEventViewnodeintheNavigatorPane.Theactualeventinstancesdisplayedontheviewwillvarydependingonthenodeselected.ForexampleifyouselecttheJobsnodeunderaSQLServer,onlyjobswillbedisplayed;allotherevents(maintenanceplans,etc.)willbefilteredfromtheview,andonlytheJobstabwillbeavailableinthecorrespondingEventViewfilter.
RECURRINGEVENTSPANEThispaneisusedtodisplayeventsthatrunfrequentlyorlongenoughthattheywouldclutterthecalendarinthecurrentintervalview.Exactlywhicheventsaredisplayedintherecurringeventspanedependsontheactiveintervalandtheschedulefrequencyoftherespectiveevents.Forexample,futureinstancesofajobthatrunsevery5minuteswillbepinnedtotherecurringeventsviewwhenina24hourinterval,butwillbedisplayedonthecalendarin1hourview.Todeterminehowlongeventsmustrunbeforeshowinginthiswindow,gototheCalendartabintheUserPreferencesmenu.
NOTE:Events listed in the recurring pane will not register as conflicts with other events on the Calendar.
CALENDARCONTEXTMENUSAContextMenuisavailableforalleventinstancesbyright-clickingtheinstanceinthecalendar.Exactlywhichcontextitemsareavailabledependonthesourcetypeoftheselectedinstance.
NAVIGATIONCONTROLThenavigationtogglebuttonatthetopleftofthecalendarallowsyoutomovequicklyforwardsandbackwardsthroughthecalendar.
ClicktheUp▲orDown▼Arrowstomovetothepreviousornexttimeinterval.TheRight►orLeft◄Arrowsmoveforwardorbackwardoneday,keepingthesameintervalandstarttime.ThePlus+andMinus-buttonsareusedtozoominoroutintheTimeRuler,oneintervalatatime,keepingtheintervalstarttimethesame.
DATEBAR
SentryOne User Guide | 141
Thisbarshowsthedayoftheweekanddateforeachdaydisplayedinthecurrentview.
Wheninamulti-dayview,ifyousingle-clickanydateonthedatebaritwillmakethatdateactive,highlightingthedate.Youcanzoomintoasingledatebydouble-clickingthedateonthedatebar.Youcandrillintoanyintervalforoneormoredaysbydouble-clickingontheTimeRulerattheleftofthecalendar(seebelow).
TIMERULEROntheleftsideofthecalendar,averticalTimeRulershowsthecurrenttime-rangefortheselectedinterval.Bydefault,Hoursaredisplayed.YoucanusetheTimeRulertozoominorouttoadesiredtimeintervaldisplay.
WhenyouhoverovertheTimeRuler,therulerhighlightsatime-range.Double-clicktozoomintothetime-range.ThisissimilartoclickingtheZoomInbutton,exceptthattheZoomInbuttondoesnotchangethestarttime.
CURRENTTIMEThecurrenttimeisdisplayed(wheninview)withahorizontalredbar.Thebarwillmoveasthetimechanges.
CURRENTTIMECOLUMNToseetheexacttime,mouse-overthenarrowcolumnbetweenthetimerulerandthecalendarorbetweenadjacentdays.
ZOOMIN/OUTYoucanalsousethecalendartozoominorouttoanytimeintervals.Right-clickanywherethereisemptyspaceonthecalendarorontheTimeRulertobringupthecontextmenu.Selectatimeintervaltozoominandout.
INTERVALBUTTONSHoverovertheverytoporbottomofthetimerulerandpopuparrowsaredisplayedwhichyoucanusetoquicklymovetothepreviousorthenextinterval,justaswiththeUp▲orDown▼navigationcontrolarrows.
EVENTINSTANCESONTHECALENDARAlleventinstancesonthecalendarappearwitharectangularblock.Futureinstancesdon'tincludeaRunStatusindicatorbar.
StepDetailsareaccessiblebyclickingthebottom-rightcorneroftheeventinstance.Bydefaultaneventinstancebackgroundiswhite.
DefaultRunStatuscolorsare:
Green-Successful
SentryOne User Guide | 142
Yellow-WarningRed-FailedOrange-RunningBlack-Stopped
GLYPHSGlyphsareusedtoprovidequickvisualcuesabouteventinstancesonthecalendar,includingtheireventsourcetype,queuingsettingsandstatus,blockstatus,etc.Eachinstancecontainsatleastoneglyphrepresentativeofitstype,whichmatchesexactlytheiconshowninthenavigatorpaneforthesourceobject.Belowisacalendarshowingseveraldifferenttypesofeventinstances.
Otherinformationalglyphsarelistedbelow:
Jobactivelyblockedorblocking
Jobactivelybeingqueued
Jobcannotbequeued
Jobsettoqueue
Jobactivelyqueuing
Eventinstanceoreventobjectcontainsanote
Eventinstancewasrunaspartofaneventchain
TopSQLindicator
AnalysisServicesTopCommandsindicator
Deadlockindicator
POPUPWINDOWSToviewdetailsforanyeventinstance,left-clickitanywheretotherightofthedurationbartoselectitandbringupapopupwindow.Thepopuprevealsdetailsabouttheinstance,includingthelaststepoutput,startandendtime,duration,runtimestatistics,schedules,queuingsettings,notes,etc.Theactualdatacontainedinthepopupwillvarybasedupontheinstanceseventsourcetype.Youcanclearthewindowbymovingyourmouseawayfromtheinstance.
HIGHLIGHTINGRELATEDEVENTSThecalendarprovidesseveraloptionsforgroupingeventsonthecalendar.Right-clickinganeventandselecting"Highlight"willdisplaytheapplicablehighlightingoptionsfortheevent.Oncethehighlightoption(s)arechosen,similareventstotheoneselectedwillbehighlightedonthecalendar.Theselectedelementswillbepersistedforallidenticaleventsourcesacrosstheinstallation.UsingtheJumpToDashboardfeaturewilloverlayeachoftheselectedeventsonthePerformanceAnalysisDashboard.
EVENTCONFLICTSAconflictisdefinedastwoactiveeventinstancesrunningonthesameserveratthesametime.Whenaninstance'sruntime(asindicatedbythedurationbar)overlapswithoneormoreotherinstancesinthesameview,itisconsideredconflictinganditsbackgroundcolorwillbeorangeasshownbelow,otherwisethebackgroundwillbewhite.
SentryOne User Guide | 143
Youcaneasilyresolvemostconflictsbydragging-and-droppingfutureinstancesonthecalendar.TheamountoftimeinstancesmustoverlapbeforeshowingasinconflictcanbeadjustedinUserPreferences.
NOTE: Events listed in the recurring window will not register as conflicts with other events on the Calendar.
TOOMUCHDATAINDICATORSOnverybusyschedules,iftoomanyeventinstancesexistwithinagivenrangetodisplayalloftheminameaningfulfashion,asmallhashedboxwillbeshownontherightsideofthepane.Hoveringovertheboxwillshowatooltipwiththenumberofadditionaleventsinthattimeperiod.Double-clickingtheboxwillzoominsoeachactualeventcanbeseen.Ifconflictsexistwithinthespecifiedrange,theboxwillbedisplayedinorange(default).Afiltercanalsobeappliedtoreducethenumberofeventinstancesonthecalendar.
SELECTINGANEVENTINSTANCEClicktoselectanyeventinstanceonthecalendaranditwillbedisplayedwithablueborderonthetopandbottom.Notethatallotherinstancesofthesameobjectonthecalendarwillchangebackgroundcoloratthesametimeforeasyreference.
RESCHEDULINGVIADRAG-AND-DROPAfteryouselectafuturejobortaskinstance,youcaneasilymoveittoadifferenttimeslotbydragging-and-droppingtheinstance.Afteryoumoveaninstance,youwillreceiveaconfirmationdialogbox.EitherclickOKtoconfirmthemoveorCanceltoreturntheinstancetoitsoriginalposition.
NOTE:This feature is disabled in the evaluation version of SentryOne.
VIEWINGSTEPDETAILSToviewfullstepdetailsforanevoentinstance,clickthesmallgraytriangleinthelower-rightcorneroftheinstanceandthestepcalloutwindowwillappear.Youcanmovethewindowbyclickingthegraybaratthetop,andyoucanresizeitbyclickingthesmalldashedtriangleinthelower-rightcorner.Notethateventinstancesthatdon'tcontainsteps,suchasstatuseventsorWindowstasks,willnothaveastepcalloutbutton.
8.3 ListView
LISTVIEWTovieweventhistoryinalistformat,selectListfromtheViewtoolbar.Thelistviewshowsalleventdatathatwouldotherwisebedisplayedonthecalendar,butinalistformat.Clickthe[+]icontoexpandandviewthefullstepdetailsfortheevent,ifanyexist.Failedinstanceswillbe
SentryOne User Guide | 144
highlightedinred.
NOTE:ThehistoryListViewforonedaycanbeopenedbypressing(CTRL+ALT+H)whenanapplicableobjectisselected.
SPLITVIEWYoucanshowboththeCalendarViewandtheListViewsimultaneouslybychoosingSplitfromtheViewtoolbar.Whenyouselectaneventinstanceonthecalendar,itwillbeauto-selectedinthelistwindow,andviceversa.
GROUPINGANDSORTINGYoucandrag-and-dropanycolumnheadingintooroutoftheareadirectlyabovethelistviewtochangetheactivegrouping.Youcanalsoclickanycolumnheadingtosortbythatcolumn.
8.4 CustomEventViews
CustomEventViewsareusedtotailorviewstoviewandmonitorspecificactivityacrosstheenterprise.
Forexample,ifyouwantedtomonitorallbackupjobsacrossallyourserverstodetermineifthereiscontentionforabackupdevice,youcouldeasilybringupthatspecificinformationtoyourcalendarviewanddrag-and-dropthosejobstolevelyourbackupscheduleorviewperformanceinformation.AfteryousetupaCustomEventView,itwilloperatelikeotherviewsselectedfromtheNavigatorpane.CustomEventViewsmayalsobesetastheDefaultViewwhentheSentryOneClientstartsbyright-clickingtheviewnodeandselectingtheappropriatecontextmenuitem.
SeeWorkingwithCustomEventViewsfordetailsonpropersetupandconfiguration.
NOTE:ToseenewCustomEventViewscreatedbyotherClientusers,right-clickonthemainCustomEventViewsnodeandselectRefresh.
8.4.1 WorkingWithCustomEventViews
FromtheNavigatorpaneexpand“CustomEventViews”.ThiswillprovidetheSub-Nodes:“Local”and“Shared”.LocalViewsareonlyavailabletotheUserthatcreatedthem.SharedViewsareavailabletoanyUseronanySentryOneClient.ThesetupoftheViewisthesameforeitheroption.
ToaddanewCustomEventView,double-clickontheLocalorSharedNodeorselect"New"fromthecontextmenu.Thiswillbringupthe“AddaCustomEventView”windowntheworkspace.The“Creator”fieldisalreadypopulatedwithyourusernameandisuneditable.
SentryOne User Guide | 145
Completethe“Name”and“Description”fieldswithinformationthatwillmakesensetoanyonewhowillusetheview.
ADDINSTANCESNext,clickonthe“AddInstances…”buttontoaddobjectsthatwillbeincludedintheview.ThetopboxallowsyoutoselectbyindividualInstances,includingWindowsTaskSchedulers.Additionally,itallowsyoutospecifyallInstancesofaspecifictype,i.e.AllSQLServerInstances.ThemiddleboxallowsyoutoselectentireSQLServergroups.Finally,thebottomsectionallowsyoutofilterforspecificobjectsfromthoseInstances.Thisspecifieswhichobjectswillbemonitoredbyperformancecountersinthisview.
IMPORTANT:Instancetextfiltersdirectlycontrolwhicheventobjectsintheviewwillbeconsideredmonitorablewhenperformancemonitoringisenabledforaview,versustheGeneraltabtextfilterswhichcontrolonlywhichobjectswillbedisplayedontheactiveCalendar/ListView.Instancetextfiltersarealwaysappliedfirst,beforeGeneraltextfilters.It'sveryimportanttoensuretheInstance-leveltextfiltersaresetproperlytoavoidmonitoringotherobjectsunnecessarily.PleaseseeFilteringProcesstopicformoredetails.
Click“OK”tosaveyourInstancesandreturntotheViewConfigurationwindow.Notethetextboxnexttothe“AddInstances…”buttonverifiesthatInstancesarenowassignedtothisView.
SELECTOBJECTSNext,clickonthe“SelectIndividualEventObjects"buttontoselectadditionalindividualobjectstoview
The“SelectObjects”windowisbrokendownintothreesections.Usethetopsectiontosearchforobjectsbytype,objectname,orsteptext.Oncethecriteriaareentered,clickthe“Search”buttonandtheresultswillbepopulatedinthemiddle“SearchResults”section.
Selectobjectstoaddbyclickingontheobjectinthe"SearchResults"sectionandclickonthe“Add”button.
The"SelectedObjects"sectionshowwhatobjectswillbeincludedintheview.
Clickonthe“OK”buttontosaveyourselectionsandreturntotheViewConfigurationwindow.
SentryOne User Guide | 146
Notethatthetextboxnexttothe“SelectIndividualEventObjects"buttonverifiesthatobjectsarenowassignedtothisView.
SELECTEVENTSOURCESNext,clickonthe"SelectEventSources"button.ThisiswhereyouwilldefinewhichEventSourceswillbeassociatedwiththeView.Forexample,ifyouonlywantedSQLAgentJobsintheView,ensurethatthe"ShowSQLServerAgentJobs"checkboxischeckedandtheremainingsourcesinthelistboxareunchecked.Youalsohavetheoptionofselectingspecificobjectsorcategorieswhenavailable.
SETFILTERSFinally,clickonthe“SetFilters”buttontoselectspecificfilterstoapplytotheView.ThefiltertabswillberestrictedbytheInstancetypesselectedpreviouslyandtheeventsourcesavailableonthoseInstances.Forexample,ifReportingServicesdoesn'texistonanyselectedInstances,theReportstabwillnotbedisplayed.
IMPORTANT:Generaltabtextfiltersareusedonlytocontrolwhicheventobjectsaredisplayedontheactivecalendar/listview.Theydonotaffectwhichobjectswillbeconsideredmonitorablewhenperformancemonitoringisenabledforaview-thisisdirectlycontrolledbytheInstancetextfilters,whicharealwaysappliedfirst,beforetheGeneraltextfilters.PleaseseetheInstancesandFilteringProcesstopicsformoredetails.
Afterconfiguringyourfiltersettings,click“OK”tosaveandreturntotheViewConfigurationwindow.Notethetextboxnexttothe“SetFilters…”buttonverifiesthatthefilterissetforthisView.
SAVEYOURVIEWClickontheSavebuttononthetoolbaranditisreadytouse.
YournewViewwillbeaddedtothetreemenuintheNavigatorpane.Justdouble-clickonittoopenit,orexpandthenodetoaddPerformanceCounters('GeneratingPerformanceAlerts'intheon-linedocumentation).
SAVEVIEWAS...MENUITEMAnotherwaytocreateaCustomEventViewisbyusingtheSaveViewAsitemundertheFilemenu.AnytimeaparticularcalendarviewisactivethatcontainstheInstancesandfiltersettingsyouwouldliketosaveforaCustomEventView,simplygotoFile > Save View As.Youwillbeaskedforanameandoptionaldescriptionfortheview.Youmayalsochecktheboxtomakeitpublic.ThisplacesitundertheSharednodeinCustomEventViewsforuseinanySentryOneClient.
NOTE:If a view has performance monitoring enabled, usingSave View Asdoes not transferperformance counter settings to the new view.
CreatinganewSharedCustomEventViewwilltriggeranAudit:CustomEventView:Createdcondition.Deletingand/ormodifyingexistingSharedCustomEventviewswillalsotriggersimilarAudit:CustomEventView:DeletedorAudit:CustomEventView:ModifiedconditionsinSentryOne.
SentryOne User Guide | 147
ORGANIZINGCUSTOMEVENTVIEWSBothLocalandSharedCustomEventViewscanbeorganizedusingcustomfoldernames.Createafolderbyselecting"NewFolder"fromthecontextmenuontheSharedorLocalnodes.Oncefoldersarecreated,viewscanbemovedbetweenfoldersbydragginganddroppingtheviewintothedesiredfolder.
Seealso:
FilteringProcess
ConditionsandActions
8.4.2 FilteringProcess
WhensettingupaCustomEventView,itisimportanttounderstandthetwolevelsofobjectfilteringthattakeplace.Thefirstleveloffiltering,sourcelevelfiltering,determineswhichobjectsareincludedintheview.Anyperformancecountersthatareappliedtothisviewwillbeappliedtoeveryobjectthatisincludedafterthisleveloffiltering.Thesecondleveloffiltering,generalfiltering,onlydeterminesunderwhichcircumstancestheaboveobjectswillbevisibleonthecalendar.Theywillstillhaveperformancecountersappliedtothemwhethertheyarevisibleornot.
SOURCELEVELFILTERINGAnyfiltertextspecifiedfromtheAddInstanceswindowwhensettingupormakingchangestoaviewisatthesourcelevel.Thiswillrestrictthenumberofobjectsassociatedwiththeviewandthereforethenumberofobjectsthatwillbemonitorable.
Aftertheviewiscreated,additionalsourcelevelfilteringcanbeappliedthroughtheEventSourcestabsuchasJobs,Alerts,Tasks,etc.Bycheckingorun-checkingtheShow<source>checkboxes,youdeterminewhetherobjectsofthistypewillbeincludedintheview.
AlsoontheEventSourcestabareEventObjectsandCategoriesboxesthatallowyoutofurtherfilterobjectsfromtheview.TheseboxesaretypicallypopulatedwhenworkingwithaviewwithonlyoneInstance.
GENERALFILTERINGAnyfiltersappliedfromtheFiltertaboftheEventViewspaneonlydeterminewhetherornotcertaineventobjectswillbevisibleonthecalendar.Eveniftheyaremadeinvisiblebythisfilter,theywillstillhaveanyperformancecountersappliedtothemthatareappliedtotheview.Thisisanimportantdistinctionforperformancepurposes.Ifyoudonotwantaperformancecounteractivatedforanobjectinaview,youmustensurethatitisfilteredatthesourcelevel,andnotsimplymadeinvisiblebytheFiltertab.
PleaseviewtheEventViewFilterProcessFlowchartforanillustrationofthisprocess.
8.4.3 FilterProcessFlowchart
EVENT VIEW FILTER PROCESS FLOWCHART
SentryOne User Guide | 148
8.4.4 LevelingBackupsAcrossaSANorNAS
Sampleviewscanbeeasilymodifiedtofurtherrestricteventinstancesshowntoonlythose
SentryOne User Guide | 149
utilizingthesame"sharedresource",suchasaNAS(NetworkAttachedStorage)orSAN(StorageAreaNetwork)device,orevenanetworksegment.Inthisexample,we'lldemonstratethesimplestepsrequiredtomodifyanexistingsampleviewtocreatea"sharedresourceview"forallRed-GatebackupswritingtoaSAN,forthepurposeoflevelingthebackupactivityacrosstheSANtoeliminateanybottlenecks,thusreducingcontentionandmaximizingperformanceoftheSANandnetwork.
FromtheNavigatorpaneexpand“CustomEventViews.”Thiswillexposethe“Local”and“Shared”sub-nodes.Localviewsareonlyavailabletotheuserthatcreatedthem.SharedviewsareavailabletoanyuseronanySentryOneClient.Thesetupofaviewisthesameforeitheroption.
Ifyouexpandthe“Shared”node,you'llnoticethepre-existing“SampleViews”sub-node.Clickthesampleviewforthebackupsystemyouuse.(Inthisexamplewe'llusethesampleviewforRed-GateSQLbackups.)
Thefirsttimeyoudouble-clickonasamplevieworselect"Open"fromthecontextmenu,thefollowingmessageboxwillappear.
Clicking“Yes”willbringupthe“SelectInstances”box.
Notethattheboxhasthreesections,"Instances","SQLServerGroups",and"InstanceTextFilters".ThisallowsyoutoselectindividualInstances(SQLServerorTaskScheduler),allSQLServersinagroup,oracombinationofboth.SincewewanttoseeallRed-GatebackupjobsacrossallSQLServersintheenterprise,we'llselect"All"underSQLServerGroups.
Thekeytoeachsampleviewisthe"InstanceTextFilter."WithityoucaneasilyrestrictthejobsplacedintheviewbytheactualTSQLorCmdExectextusedinajob'ssteps.Multiplekeywordsareseparatedwithasemicolon,andaplussign(+)isusedinfrontofanykeyword(s)thatyouwanttoapplyusingan"and"...otherwisethekeywordwillbeappliedwithan"or".
Notethedefault"StepText"filterfortheRed-GateSQLbackupssampleview:"master..sqlbackup;SqlBackupC".Thisfilterwillreturnonlyjobswhichcontainanyofthosestringssomewhereinthestepcommandtext.Itwillreturnallmatchingbackupjobs,notjustthosewritingtoaparticularSAN.
TorestricttoonlythosejobswritingtoaSAN,oneminoradjustmenttothefiltershouldbemade,asshownbelow.Addan"and"filterusingthebaseSANnameorIPaddress.Inthisexamplewe'veused"+\\SAN01".Thiswillcausetheviewtoreturnanyjobswhichcontain"master..sqlbackup","SqlBackupC"ANDcontain\\SAN01.
Afterclicking“OK”,wehaveaCustomEventViewreadytouse.
SentryOne User Guide | 150
Thejobswithanorangebackgroundindicateschedulingconflicts-notewehaveseveralcaseswherebackupscomingfromdifferentserversarehittingtheSANatthesametime.Drag-and-dropfunctionalitycanbeusedonfuturejobinstancesonthecalendartoeliminatetheschedulingconflictsandreduceassociatedcontentionontheSANornetwork.
Whenalljobshaveawhitebackground,youknowyouhavea“leveled”schedule.AleveledscheduleensuresthatanybottlenecksandassociatedIOerrorsontheSAN'sdisksubsystemandnetworkareminimized,andthatbackupjobsrunatoptimalspeed!
SeeAlso:
SaveViewAs...MenuItem
8.5 ChainingandQueuing
8.5.1 EventChains
Aneventchainisaseriesofdependenciesbetweeneventsrunningonthesameserverordifferentservers.Thereisnolimittothelengthofachain,orthenumberofeventsthatcanbedefinedforachain.Tonavigatetoeventchains,selectthe"EventChains"nodefromtheNavigator.
Name-ContainsthenameoftheEventChain.ThisalsoisthevaluedisplayedinthetreeviewundertheEventChainsnode.
Description-Descriptivetextfortheeventchain.
Createdby-Displaysthechaincreatorandthedate/timeofchaincreation.
Updatedby-Ifthechainisupdated,displaystheupdateranddate/timeofupdate.
SentryOne User Guide | 151
SelectChainInstance-Usethisdrop-downlisttoselectapastruntimeforthechaintoviewitshistory.
EndTime-Whenviewinganhistoricalchaininstance,thiswillshowthetimethechaincompleted.
Status-Displaysthestatusofthechainbeingviewedas,"Ready","Running",or"Completed".
ChainEnabled-Optiontoenableordisabletheeventchain.
EditButton-Toaddnodesormakechangestoachain,clickthisbutton.
Autorefresh-Determineshowoftenthechainworkspacewillrefreshtoshowupdatedinformationwhenthechainiscurrentlyrunning.
Note:OnlytheinitialjoboftheEventChainneedstobescheduledforthechaintorun.
EVENTCHAINEXAMPLESExampleA:WhenJob1(SQLServerjob)completes,thenexecuteJob2(SQLServerjob).IfJob2succeeds,executeTask A(WindowsTaskSchedulerTask).IfJob2fails,executeJob3
SentryOne User Guide | 152
Inordertoaccommodateapaththatencompassesthesameeventmorethanonceandavoidacircularreference,theconceptofnodesareused.ANodeissimplyauniquerepresentationofanevent.EventhoughJob1islistedtwice,thechaincantreattheeventastwoseparateinstancesandapplyvaryingconditionstoeachinstancewhichprovidesagreaterdegreeofflexibility.
CIRCULARREFERENCESAneventchainisalogicalworkflowthroughaseriesofoneormoreeventobjects,witheachoccurrenceofaneventobjectrepresentedbyauniqueeventnode.Acircularreferencewouldoccuriftheworkflowwasbuilttoreferenceaneventnodeasecondtime.Suchaworkflowisnot allowedinaneventchain.
Forexample:WhenEvent Acompletes,thenexecuteEvent C.WhenEvent Ccompletes,thenexecute
SentryOne User Guide | 153
Event A.
Toallowaneventtooccurasecondtimeinaneventchain,addtheobjectEvent Aasecondtimetotheobjectlist.ChangetheToNodeinthesecondlinktoreferencethenewlycreatednode.Thismethodcanberepeatedtoallowtheeventtooccuradiscretenumberoftimes.
ADDANEVENTCHAINDoubleclickthetheEventChainsnodeintheNavigatorpaneorusetheNewcontextmenucommand.Assigntheeventchainanameandoptionallyadescription.Right-clicktoaddobjectsthatwillbeusedintheeventchainordraganddropjobsfromtheNavigatorontotheEventChaindiagram.Nodenameswillbegiventoeachobject.Addlinkstothechainbyright-clickingtheappropriatenode,thenselectWorkflow.Next,selectthestatusconditionforexecutionandthetargetnode.Nodescanbedraganddroppedtorepositionforeasierviewingofthechain.TheAutoLayouttoolbarbuttonmayalsobeusedoncelinksareestablished.Savethechain.
EDITANEVENTCHAINSelectEventChainnodefromthetreeviewintheNavigatorwindow.ClicktheEditbutton.EditthenecessarypropertiesoftheEventChain.Savethechain.
REMAPPINGNODESINANEVENTCHAINEventChainnodescanberemappedtoothereventobjects.ThiscansaveyoutimeoverdeletingandrecreatingnodesinyourEventChain.WhenyouremapanodeinanEventChainthenextstep(s)intheworkflowwillremainintact.ToremapanodeusetheRemapNodecommandavailablethroughthenodecontextmenu.
SentryOne User Guide | 154
Important:IfanyEventChainnodesorworkflowstepsarechanged,includingtheremappingofanode,thehistoryforthechainbecomesinvalidandwillbelost.
CHAINHISTORYToviewanhistoricalrunofachain,selecttheruntimefromtheSelectChainInstancelistbox.Runtimeandstatusinformationwillbedisplayedforeachnode.Iftheobjectcompletedsuccessfully,itwillhaveagreenbackground.Ifitfailed,itwillhavearedbackground.Thisisalsoshownforcurrentlyexecutingchains.Currentlyexecutingnodeswillhaveanorangebackground
CONTEXTMENUS
NAVIGATORPANE
Item Description
Open OpenstheEventChain.
Edit OpenstheEventChaininedit-mode.
StartChain StartsallleadnodesofthisEventChain.
Delete Deletethechain.
Disable Disablethechain.
Reset Resetacurrentlyrunningchain.
ChangeFolder Allowsyoutomovethespecifiedchaintoadifferentorganizationalfolder.
VIEWMODEWorkspace
Item Description
Refresh Refreshthecurrentview.AlsodonebypressingF5.
Print Printthechaindiagram.
PrintPreview Previewtheprintedchainlayout.
Zoom Zoominorouttoviewentirechain.
Node-<Current>ChainInstance
Item Description
ExecuteNode
Allowsyoutomanuallyrunanodeinachain.Ifthenodeisaleadnodeforachain,thenanychildnodeswillbeexecuteduponcompletion.Nochildnodeswillstartifthenodebeingexecutedisnotaleadnode.
SentryOne User Guide | 155
JumpTo...
--ThisInstance Bringsupacalendardisplayingtheselectednode'scurrentinstance.
--LastFailure Bringsupacalendardisplayingthelastfailurefortheselectednode.
--LastInstance Bringsupacalendardisplayingthelastinstanceoftheselectednode.
--NextInstance Bringsupacalendardisplayingthenextinstanceoftheselectednode.
--Navigator NavigatestotheselectednodeintheNavigator.
Show
--History
----4Hours Displaysthelast4hoursofjobhistoryfortheselectednode.
----1Day Displaysthelast1dayofjobhistoryfortheselectednode.
----3Days Displaysthelast3daysofjobhistoryfortheselectednode.
----7Days Displaysthelast7daysofjobhistoryfortheselectednode.
----14Days Displaysthelast14daysofjobhistoryfortheselectednode.
----30Days Displaysthelast30daysofjobhistoryfortheselectednode.
--RuntimeStats Showsthecurrentruntimestatsfortheselectednode.
Properties Viewthepropertiesoftheobject.
Node-HistoricalChainInstance
Item Description
ExecuteNode
Allowsyoutomanuallyrunanodeinachain.Ifthenodeisaleadnodeforachain,thenanychildnodeswillbeexecuteduponcompletion.Nochildnodeswillstartifthenodebeingexecutedisnotaleadnode.
JumpTo...
--ThisInstance Bringsupacalendardisplayingtheselectednode'scurrentinstance.
--LastFailure Bringsupacalendardisplayingthelastfailurefortheselectednode.
--LastInstance Bringsupacalendardisplayingthelastinstanceoftheselectednode.
--NextInstance Bringsupacalendardisplayingthenextinstanceoftheselectednode.
--Navigator NavigatestotheselectednodeintheNavigator.
SentryOne User Guide | 156
Show
--History
----4Hours Displaysthelast4hoursofjobhistoryfortheselectednode.
----1Day Displaysthelast1dayofjobhistoryfortheselectednode.
----3Days Displaysthelast3daysofjobhistoryfortheselectednode.
----7Days Displaysthelast7daysofjobhistoryfortheselectednode.
----14Days Displaysthelast14daysofjobhistoryfortheselectednode.
----30Days Displaysthelast30daysofjobhistoryfortheselectednode.
--Runtimestats Showsthecurrentruntimestatsfortheselectednode.
StartChainHere Allowsyoutoexecuteachainfromanodeotherthanaleadnode.Whenthisoptionisselected,anewchaininstanceiscreatedthatcontainsacopyofthenodesstatusfortheinstanceyouareviewing.
Properties Viewthepropertiesoftheobject.
EDITMODEWorkspace
Item Description
AddNodes AllowsyoutoaddnewJobsorTasksasnodesinthechain.
Save Saveanychangestothechain.
Print Printthechaindiagram.
PrintPreview Previewtheprintedchainlayout.
AutoLayout Organizesandarrangesthechainintoadefaultflowchartpattern.
Zoom Zoominorouttoviewtheentirechain.
Node
Item Description
Workflow Allowsyoutospecifytheconditiononwhichonenodewillexecuteanother.
RenameNode Renamethenode.Thiswillnotrenametheactualjobortask.
DeleteNode Deletetheexistingnodefromthechain.
Properties Viewthepropertiesofthejobortask.
SentryOne User Guide | 157
EVENTCHAINNOTIFICATIONS
GENERALACTIONS
Condition FiredWhen
EventChain:Started AnyleadnodeforanEventChainhascompleted.
EventChain:Completed AfterlastnodeinanEventChainhascompleted.
EventChain:Success EverynodeinanEventChainruns.
EventChain:Failure OneormorenodesinanEventChaindonotrun.
EventChain:RuntimeThresholdMaxTheEventChainruntimeexceedstheMaximumRuntimeThresholdsettingsspecifiedfortheEventChain.
EventChain:RuntimeThresholdMinTheEventChainruntimeexceedstheMinimumRuntimeThresholdsettingsspecifiedfortheEventChain.
EventChainNode:Started TheEventChainnodestarts.
EventChainNode:Completed TheEventChainnodecompletes.
EventChainNode:Success TheEventChainnodecompletes,reportingasuccess.
EventChainNode:Failure TheEventChainnodecompletes,reportingafailure.
EventChainNode:RuntimeThresholdMax TheEventChainnodeexceedstheMaximumRuntimethresholdspecifiedforthenode.
EventChainNode:RuntimeThresholdMin TheEventChainnodeexceedstheMinimumRuntimethresholdspecifiedforthenode.
Whenmorethanoneworkflowpathexistsinachain,theChainSuccessandChainFailureconditionsbecomelessvaluablesincetheyarebasedexclusivelyonwhetherornotallnodescompleted.AtthatpointtheNodeSuccessandNodeFailureconditionsshouldbeusedformoreaccuratestatusinformationabouttherespectivenodesand/orpaths.
SETTINGSEventChainsandEventChainNodessupportRuntimeThresholdsettings.Thesesettingsarespecifiedasabsoluteruntimesforboththeminimumandmaximumruntimethresholds.
Setting Description
InheritFromParent Specifiedwhethertheruntimethresholdsettingsareinheritedfromtheparentobject.
MaximumRuntimeThreshold Themaximumallowedruntimeforthechain/node.
MinimumRuntimeThreshold Theminimumallowedruntimeforthechain/node.
SentryOne User Guide | 158
AUDITACTIONS
Condition FiredWhen
EventChainModified ModificationsaremadeandsavedtoanEventChain.
EVENTVIEW
AllEventChainscontainanEventViewsub-node.Double-clickingorselectingOpenfromthecontextmenuwillproduceacalendarofalltheobjectsthatareapartoftheselectedchain.AswithanyCustomEventView,youalsohavetheabilitytoaddPerformanceCounterstoanyEventChainView.
EVENTCHAINCALENDARINFO
AllEventSourceObjectsthatappearonacalendarbecauseofanEventChainwilldisplayasmallchainglyphinthetopleftcorner.
Additionally,theEventSourceObjecttooltipwilldisplayinformationaboutanychain(s)thatthisobjectisassociatedwith.An*isplacednexttotheactualchainthatcreatedthisinstance.
SentryOne User Guide | 159
REPORTINGSERVICESJOBSINEVENTCHAINSItisaknownlimitationthatReportingServicesjobswillnotworkwithinchainsinversionspriorto2.7.ThislimitationoccursbecauseReportingServicesjobsarefilteredoutofSentryOneastheyhavenodurationanddonotreflecttheaccurateinformationaboutthereport.
Aworkaroundisavailableinversion2.7andlater,asdescribedbelow:
Normally,SentryOnefiltersoutaReportingServicesjob.YoucanforcethemtostayinthehistoryandthusalertchainingthattheyhavecompletedbyplacinganadditionalspaceaftertheAddEventcall.
Forexample,ifyoucurrentlyhave:AddEvent @EventType='Test', @EventData= '5B0537EA-7A87-4C8B-B002-03A51DD5100C'
Youcouldchangeitto:AddEvent @EventType='Test', @EventData= '5B0537EA-7A87-4C8B-B002-03A51DD5100C'
Afterthechangeismade,resetthechain.
**IMPORTANT**IfyoumanuallymodifytheSSRSschedulerjobsteptextasdescribedabove,andatalaterdatemakemodificationstothereportscheduleviaanySSRStool,themanualsteptextchangesyoumadewillbeoverwritten.ItisimportanttoremembertomakethesemodificationstothesteptextagainifyouhaveincludedanSSRSreportasnodeinanEventChain.
COPYCHAINYoumayrunintoasituationwhereyouwanttocreateasecondchainthatissimilartoanexistingchain,orwanttouseanexistingchainasatemplatefornewchain.Youcaneffectivelycopyachain,usingtheSaveChainAs...optionontheFileMenu,
Youwillthenbeaskedtoenteranewnameandoptionaldescriptionforthechain.
NOTE:ToseenewEventChainscreatedbyotherClientusers,right-clickontheEventChainsrootnodeandselectRefresh.
ORGANIZINGEVENTCHAINSEventChainscanbeorganizedusingcustomfoldernames.AnyEventChaincanbemovedintoanotherfolderbydragginganddroppingintoanotherfolder.
Seealso:
EventHistoryMonitorSettings
CustomEventViews
PerformanceMonitoring('SchedulePerformanceMonitoring'intheon-linedocumentation)
ConditionsandActions
8.5.2 JobQueueing
JobQueuingallowsaresourceintensivejobtodelayotherjobsfromexecutinguntilithascompleted.Thisallowstheresourceintensivejobtoutilizemoreoftheserverresources,allowingalljobstofinishfasterandmoreefficiently.UnlikeEventChains,JobQueuingappliesonlytothejobsonanindividualSQLServerinstance.
SentryOne User Guide | 160
EachSQLAgentjobhasitsownqueuingsettings.Simplyclickonthedesiredjobandselectthe"Settings"tabfromtheConditionsandSettingsPane.NotethatyoucanalsoconfiguredefaultqueuingsettingsatboththeGlobalandInstancelevels,andthosesettingswillbeinheritedbyanyassociatedjobs.
BEHAVIORWHENQUEUINGOTHERJOBS
INHERITFROMPARENTSelectFalseifyouwanttoconfigurethequeuingbehaviordifferentlythantheinheritedsettings.
QUEUETYPEUnderQueueTypethereare3options:
1.Neverqueue–Thisjobwillnotqueueanyotherjobs.
2.Queueforspecifiedtime–Thisjobwillqueueotherjobsforthespecifiedtime.
3.Queueindefinitely–Thisjobwillqueueotherjobsuntilthisjobhascompleted.
QUEUEOTHERSFORUPTOThisisthemaximumamountoftimethisjobwillqueueotherjobs.ThissettingisnotavailableGlobally,sinceitcouldbedisastrousifitwereaccidentallyenabledforalljobsonallSQLServers.
AUTO-STARTTHRESHOLDAnyqueuedjobwhosenextscheduledruntimeisbeyondthespecifiedthresholdwillbestartedautomaticallyuponleavingthequeue.Ifajob'snextscheduledruntimeisbeforethethresholditwillnotauto-start,butresumewithitsnextscheduledrun.Thissettingisextremelyvaluableforavoidinghavingtoconfiguretheauto-starttypeforeverypossiblejobthatcanbequeued.It
SentryOne User Guide | 161
effectivelyprovidesasafeguardsothatjobsthatdon'trunveryfrequentlywillauto-startandthusnotmissascheduledrun,andthosethatdorunfrequentlywillresumetheirschedulessinceitusuallydoesn'tmatteriftheymissafewruns.Italsohelpstoautomaticallyeventheloadwhenaqueuingjobfinishes,sothatallqueuedjobsdon'tauto-startatthesametimeandcauseresourcecontentionissues.
Note:ThemaximumnumberofjobsthatcanbequeuedonaserverisspecifiedbytheMaximumQueueLengthsettingunderSQLServerInstancesettings.
BEHAVIORWHENTHISJOBISQUEUED
INHERITFROMPARENTSelectFalseifyouwanttoconfigurethequeuingbehaviordifferentlythantheinheritedsettings.
QUEUETYPEUnderQueueTypethereare3options:
1.Neverqueue–Thisjobcannotbequeuedbyanotherjob.
2.Queueforspecifiedtime–Thisjobwillonlybequeuedforthespecifiedtime.
3.Queueindefinitely–Thisjobcanbequeuedindefinitely.
QUEUEFORUPTOThisisthemaximumamountoftimethisjobcanbequeued.
AUTO-STARTTYPEControlstheauto-startbehaviorforthejobwhenitleavesthequeue.
Thereare3Auto-Startoptions:
1.Don'tAuto-Start,resumeschedule-Skipthejobuntilit'snextscheduledrun.
2.Auto-startimmediately-Ifthisoptionischeckedthejobwillexecuteassoonasitleavesthequeue.However,sometimesyoumaynotwantthisbehavior,suchasforjobsthatshouldonlyrunataspecifictime,orforrecurringjobs(jobsthatrunmultipletimesperday)whereasinglemissedrunisnotcritical.
NOTE: If this option is not selected and the job is always queued by another job, such as two jobswith the exact same schedule, it may never run.
3.Usedefaultsetting-Thejobwillusethequeuingjob's"Auto-StartThreshold"setting.Thisisthedefaultsetting,andisrecommendedformostcases.
Note:JobswhichusesharedschedulesonSQLServer2005andabovewillnotbequeued.
QUEUELOGTheQueueLogcanbeviewedbyselectingViewQueueLogfromthecontextmenuoftheJobsnodeofaSQLServeroranindividualjobnode.TheQueueLogprovidesdetailsaboutallrecentqueuingactivitythathastakenplaceontheserverorfortheparticularjob.
SentryOne User Guide | 162
ANEXAMPLESCENARIOTheprimaryreasonforqueuingjobsistoensureahighpriority,resourceintensivejobhasfullaccesstotheserver'sresourcestocompleteitstaskwithoutcompetingwithotherjobsthatcanbedelayeduntilthehighpriorityjobisdone.
Forexample,considerafullbackupjobthatrunsonceaweek,everySundayat1AM.Ifthisistheonlyjobrunning,havingfulluseoftheserver'sresources,itcancompleteinabout45minutes.However,therearetypicallyotherrecurringjobsonthesameserverthatcancausecontentionforresources,resultinginthebackuptakingalmosttwohourstocomplete.Thisinturncausesdelaysinmanyotherrecurringjobsbeingabletosuccessfullycomplete.Whileitisnotplausibletorescheduleafiveminuterecurringjobtorecuronceanhourforthesakeofthisoneweeklybackup,itmaybeacceptabletotemporarilyqueuethatjobforonehouronceaweekuntilthebackupiscomplete.
8.6 ClearingFailedInstances
IDENTIFYINGAFAILEDINSTANCEWhenacertaineventhasfailed,thereareseveralwaystheSentryOneClientsignalsyoutothatfact.
IntheNavigatorPane,thetextoftheobjectwillberedtoindicateafailedinstance.IntheCalendarView,thestatusbarforthatevent'sinstancewillbered
andintheListView,thefirstcellhasaredbackground.
SentryOne User Guide | 163
CLEARINGTHEFAILUREInordertoclearafailure,right-clickonanyoftheabovementionedinstanceviews.SelectClearFailedStatus.Youwillbeaskedifyouwanttoleaveanotebeforeclearing.
Alternately,selectAdd/EditNotesfromthecontextmenuandtheNoteswindowwillappear.Enterdetailsaboutthefailureandresolutiontaken,thenclickSave.Amessageboxwillappearaskingifyouwouldliketoclearthefailedstatusfortheobject.ClickYes,andallopenfailuresfortheobjectwillbecleared,andNavigatornodesshowninredwillbechangedbacktoblack.Whenclearingthefailedstatusforamaintenanceplanjob,maintenanceplan,etc.,anyrelatedchildorparentobjectswillalsobecleared.
Seealso:
Notes
Reporting
8.7 CopyJob/AlertWizard
SentryOneallowsyoutocopyanyjoboralerttoanotherserverorserversquicklyandeasilywiththeCopyJob/AlertWizard.Thiscanbedoneby:
Right-clickingajoboralertinstanceontheSentryOneClientandselectingtheCopyJobTo..orCopyAlertTo..fromthecontextmenu.Next,selecttheserverstowhichyouwouldliketocopytheobject.ClickNext,confirmthetargetserversandclickexecute.Theobjectswillbecopiedandreadilyavailableonthetargetservers.ClickFinishtoclosethewizard.
8.8 ConflictViewer
SentryOne User Guide | 164
EventconflictsareoftenoneofthegreatestcontributorstoperformanceproblemsonaSQLServer.TheConflictViewerprovidesvaluableinsightintohoweventschedulesarecontendingwitheachother,andenablesquickandeasycleanupofconflictconditions,ensuringyoureventschedulesareleveled.ToopentheConflictViewer,clicktheViewConflictsbuttonontheToolbars.
Theviewisinitiallysorteddescendingby“TotalConflictTime”,whichisthetotaltimeaneventconflictswithotherevents.Thismeasureisextremelyvaluableindeterminingwhicheventobjectsmaybecausingthemostresourcecontention.TheprimaryeventobjectislistedwithitsdetailinformationincludingName,StartTime,EndTimeandDuration.Theeventobjectsthatareconflictingwithitarelistedbelowitalongwiththeirdetailinformation,aswellastheactualtimeinconflict.
Double-clickanyconflictrecordtojumpdirectlytothecorrespondingjobinstanceonthecalendar.Fromthereyoucanusedrag-and-droptorescheduletheassociatedeventsandcleanuptheconflictcondition.Thisisthequickestandmosteffectivewaytolevelaneventschedule.
NOTE: The Drag-and-Drop feature is disabled in the Evaluation copy of SentryOne.
VIEWERSETTINGSShowConflictsOver
Usethissettingtosetthetimerangeoverwhichyouwanttoviewconflicts.TheConflictViewerwillstartatthecurrenttimeandprojectoutintothefuturebythespecifiedamount
MinimumTimeinConflict
Usethissettingtoeliminatenoisecausedbyshort-runningevents.
8.9 EventObjectInformationWindow
Whenyouright-clickanyeventobjectintheNavigatorandselectOpenordouble-clickaneventinstanceontheCalendar,Navigator,orRuntimeGraph,atabfortheeventobject'sInformationWindowwillappear.Thewindowcontainsvariousmetadataabouttheobject.Theinformationdisplayedwillchangebaseduponthetypeofobject.
SentryOne User Guide | 165
Foractiveeventobjects,runtimestatisticsandtheCalculateRuntimeStatisticsSinceoptionwillalsobeshown,aswellasschedulesforschedulableobjectssuchasjobs,tasksandreports.Tasksincludeadditionaldatasuchastheoptiontodefineasuccessexitcode.
RECALCULATINGRUNTIMESTATISTICS
Ontheinformationwindowforallactiveeventobjectsyou'llseetheCalculateRuntimeStatisticsSinceoption.Usethisfeaturewheneveramajorchangeismadetoaneventdefinitionwhichmaycauseit'stypicalruntimetoincreaseordecreasedramaticallyfromwhatitwaspreviously,toavoiderroneousruntimeminimumormaximumnotificationsfrombeingsent.SimplychecktheboxnexttoCalculateRuntimeStatisticsSinceandenterthedateandtimetheeventwaschanged,thenclickSaveonthetoolbar.ThiswillcauseSentryOnetoimmediatelyrecalculateruntimestatisticsusingonlyrunhistorysincethespecifieddate/time.ThisvaluewillalsobeusedwhenevertheSentryOneMonitoringServiceauto-calculatesstatisticsfortheeventinthefuture.
8.10 Multi-serverAdministration(MSX/TSX)
SentryOneprovidesadditionalfunctionalityformulti-serveradministration.Anyserverdesignatedasamasterserverwillhave"(MSX)"afteritsnameintheNavigatorpane.Youwillalsoseeanadditionalsub-nodecalled"Multi-serverJobs".ThisnodeprovidesthesamefunctionalityandcontextmenuitemsasthestandardJobsnode,however,jobsunderthisnodearedistributedtotargetservers.Justlikethe"Jobs"node,ifyouopenit(bysingle-ordouble-clicking)youwillseeacalendar/listviewofallmulti-serverjobsacrossalltargetservers-bydefaultthisviewisfilteredtoshowonlyfailedorlongrunninghistoricalevents,justliketheglobalandgroupviews.ThefiltercriteriacanbechangedintheFilterpane.
TargetserversappearintheNavigatorpanewith"(TSX:<SERVERNAME>)",whereSERVERNAMEisthenameofthemasterservertowhichitisenlisted.
PUBLISHINGCONFIGURATIONTOTARGETSERVERSJustlikestandardlocaljobs,ConditionsandActionscanbeexplicitlyconfiguredformulti-serverjobsbysingleclickingamulti-serverjobnodeintheNavigatorpane.Also,justlikelocaljobs,multi-serverjobsonamasterserverinheritanyConditionsexplicitlyconfiguredforthemasterserverconnection(accessedbysingle-clickingthemasterservernode).Bearinmind,however,thatmulti-serverjobsdon'tactuallyexecuteonthemasterserver-theyarecreatedandconfiguredonthemasterserverandthenpushedouttooneormoretargetserversforexecution.
Inotherwords,themulti-serverjobsexistonthemasterserverstrictlyforconfigurationpurposes,
SentryOne User Guide | 166
andthisappliestowatchedstatusandactionsaswell.Thesesettingsformulti-serverjobsdon'tactuallydoanythingonthemasterserver-theyexistonlysothattheycaneasilybeappliedtotargetservers,toavoidhavingtomanuallychangeconfigurationsoneachtargetserverindividually.ThisisaccomplishedbythePublishConfigurationWizard.WhenachangeismadetoconfiguredConditionsorwatchedstatusformulti-serverjobsonthemasterserver,thosechangescaneasilybepushedouttoselectedtargetserversusingthewizard.
ThePublishConfigurationWizardcanberunforanindividualmulti-serverjob,oratthemasterserverlevel.Tostartthewizard,rightclickanyjobunderthe"Multi-serverJobs"node,orattheInstancelevelbyrightclickingontheMSXservernode.
SelectPublishConfigtoTargets,andthePublishConfigurationWizardappears.AfterclickingNextattheintroduction,selectthetargetserverstowhichyouwishtopublishconditionsandwatchedstatus.Ifyoulaunchthewizardfromthemasterservernode,youhavetheoptionofpublishingwatched/unwatchedsettings,SQLServerInstance-levelconditions,and/orjob-levelconditions.Ifyoulaunchfromanindividualjob,youmayonlypublishthewatchedsettingandconditionsforthatjob;theInstance-levelconditionsoptionisunavailable.
Aftermakingyourselections,thewizardwillconfirmyouractionsandexecutethescripttomakethechangestothespecifiedtargetservers.Allspecifiedtargetsarenowconfiguredidenticallytothemasterserver,basedontheoptionsyouselected.
NOTE:
Target (TSX) SQL Servers are really no different than any other SQL Servers managedby SentryOne . Other than the fact that they can include a mix of local and multi-serverjobs, the hierarchical configuration process used by SentryOne applies to target servers andall jobs on target servers just as with any other Instance or object. For example, if you neverrun the Publish Actions Wizard, but have configured global actions, the global actions willbe inherited by all target servers as usual.Likewise, if you have set Auto-watch new Objects to True for SQL Agent Jobs at the globallevel (either manually or using the Quick Start Setup Wizard), any local or multi-server jobson a target server will be watched by default.There isn't a two-way relationship for watched status and actions configuration betweentarget servers and a master server. Once you have published these settings to a targetserver from the master, you can easily override them later on the target server as usual, butwatched status and actions changes made on a target server have no effect on the masterserver configuration.
8.11 RuntimeStats
TheRuntimeStatsnodedisplaysanactiveeventobject'shistoricalruntimeinformation.Twoviewsareprovided:RuntimeHistoryandRuntimeAggregates.Thisselectioncanbemadefromthemaintoolbar.Thesegraphsmakeiteasytoidentifyruntimetrends,whichcanbeanindicatoroforeventuallyleadtoperformanceissueswiththeeventortheserver.
RUNTIMEHISTORYGRAPHThisgraphshowsajob’sactualruntimeandstatusoverthespecifiedinterval.Aredbarindicatesthattheinstancefailed.
SentryOne User Guide | 167
RUNTIMEAGGREGATESGRAPHThisgraphsshowthedistributionofthejob’sactualruntimeoverthespecifiedinterval.Thisdatacanbevaluablewhendecidingwheretoplaceajobinthescheduletominimizecontention.
GRAPHCONTROLSUsetheNavigationtoolbartochangethestartdate/timeandintervalforthegraph.TheDayscontrolcangoupto60days.Whenevertheselectedintervalislessthan1day(1minutethrough4hours),theDayscontrolwillbechangedto1day.
Min/MaxYVal
Whenaruntimegraphisfirstdisplayed,SentryOnewilltrytodeterminethemostappropriateintervalandmaximumY-axisvalue.Youcanchangeeitherofthesesettingsatanytime.
Auto-scaletoMaxValue
CheckingthisboxwillautomaticallyselecttheappropriateMaxYValueofthedatabeingshowninthecurrentview.
IntervalType ChangestheintervalusedfortheY-axis.
ShowValueLabels
Deselectthischeckboxtohidethebarvaluelabels.Thiscanbecomenecessaryforbroaderrangeswithhundredsorthousandsofbarstoreducethenoiseonthegraph.
ForinformationontheTopSQLRuntimeStats,seeTopSQLRuntimeStats.
8.12 Toolbars
SAVEANDPRINTTOOLBARThefollowingdescribestheSaveandPrintToolbarbuttons:
Save Universalsavebutton.
PrintPreview Displaysaprintpreviewwindowfortheselectedobject.
Print Printstheselectedobject.
NAVIGATIONTOOLBAR
SentryOne User Guide | 168
TheNavigationToolbarisusedfornavigatingthroughouttheCalendarViewaswellasPerformanceGraphsandRuntimeStats.
DATE/TIMESELECTORTheDate/TimeSelectorcontrolsallowyoutojumptoaspecificdateortime,andselectthedesiredtimeinterval.
DateSelector Usedtoselectthedatetoviewonthecalendar.
TimeSelector Usedtoselectthetimetoviewonthecalendar.
GoMovesthecalendartodisplaythetimeselectedinthedate/timeselectormaintainingthecurrentlyselectedinterval.
GotoCurrentTime
Jumpsdirectlytothecurrenttimemaintainingthecurrentselectedtimesliceandinterval,unlesstheintervalisgreaterthan1hourinwhichcase1hourwillbeused.
WhenyouclicktheDateSelectorasmallcalendarwillappear.Clickanydaytoselectit.Clicktherightandleftarrowstochangethemonth.ClicktheboldTodaytextatbottomtoauto-selectthecurrentday.Youcanalsotypeinvaluesforthedayoryeardirectly.
Tonavigatetoaspecifictimeontheselectedday,selecttheTimeSelectorbyclickingatimeincrement(hour,minute,etc.)andthenusingtheup/downarrowsortypinginanewvalue.
TheworkspaceviewwillnotrefreshuntilyouhavecompletedyourselectionsandclickedtheGobutton.
INTERVALSELECTORTheIntervalSelectorisusedtozoomthecurrenttimeintervalinorout.
1Minute Displaysthecalendarinaoneminuteinterval.
10Minutes Displaysthecalendarinatenminuteinterval.
1Hour Displaysthecalendarinaonehourinterval.
4Hours Displaysthecalendarinafourhourinterval.
1Day Displaysthecalendarinaonedayinterval.
MISCELLANEOUSCONTROLS
Setsthetotalrangeofdaystobedisplayedonthecalendarorgraph.Clickeitherarrowtodecreaseorincreasethevalue,
SentryOne User Guide | 169
DaysSelector orsimplytypeinanewvalue.Themaximumvalueis30days.Thecurrentlyselectedinterval(1minuteto4hours)aswellasthestarttimeoftherangewillbemaintainedwhenchangingthenumberofdays
PreviousInterval Usedtonavigatebackwardintimetothepreviousinterval.
PreviousSmallInterval
Usedtonavigatebackwardintimeusingasmallerinterval.
NextInterval Usedtonavigateforwardintimetothenextinterval.
NextSmallInterval
Usedtonavigateforwardintimeusingasmaller.
Refresh
UsedtorefreshtheactiveworkspaceviewbyretrievingthelatestinformationfromtheSentryOnedatabase.
HolddowntheCtrlkeywhenyouclickittoforceahardrefresh.ThiswillcausetheSentryOneClienttoconnectdirectlytoandcollecteventdatafromthetargetInstanceincasetheMonitoringServiceisdown.(NotavailableonCustomEventViewsorviewswithmultipleInstances)
ViewConflicts DisplaysallscheduleconflictsfortheselectedInstance.(SeeConflictViewer)
VIEWTOOLBARSelectfromCalendar,List,orSplitviews.Theactiverangewillnotechange,onlytheformatinwhichtheeventdataisdisplayed.(SeeCalendarView)
8.13 ExtendedJobStepLogging/SSISLogging
SentryOneEventCalendariscapableofcollectinganddisplayingextendedsteplogdataforSQLServerAgentjobstepsonSQLServer2005andabove.Inorderforthisdatatobecollected,certainoptionsmustbeenabledatthejobsteplevel.
Theseoptionsareonlyavailableforthefollowingstepsubsystems:
OperatingSystem(CmdExec)
AnalysisServicesCommand
AnalysisServicesQuery
Transact-SQLscript(T-SQL)
Refertothesetopicsforadditionalinformation:
ExtendedJobStepLogging(SQLServer2005+)
EnablingSSISLogging
SentryOne User Guide | 170
8.13.1 ExtendedJobStepLogging(SQLServer2005+)
BydefaultthestephistoryforSQLServerAgentjobsincludesamaximumof1024charactersofoutput,anditisnottypicallycleanlyformatted.Ifyouneedtoseemoreofthehistorydatausingthenativeoutputformat,inSQLServer2005andaboveyoucaneasilyenableextendedloggingforajobstep.Onceenabled,SentryOnewillcollectandprocessthefirst512KBofstepoutput.
Note:LoggingforSSIS(SQLServerIntegrationServices)packagesshouldalwaysbeenabledusingtheSentryOneClient.SeetheEnablingSSISLoggingtopicformoredetails.
Toenableextendedloggingforajobstep,openthepropertiesforthejobstepinSQLServerManagementStudio.Select“Advanced”ontheleftsideoftheform.Check"Logtotable"toenableextendedsteplogging,thenclickOK.
Important:Donotselectthe"Appendoutputtoexistingentryintable"option,orSentryOnewillnotcollecttheextendedsteplogdata.
Onceenabled,extendedjobsteplogdatacanbeviewedintheSentryOneClient,bothinjobstepcalloutwindowsonthecalendar,andinhistorylistviews.Anewlevelwillbeaddedunderneathanyjobstepswithextendedloggingenabled.Simplyclick[+]toexpandthelevelandviewthehistorydetails.
ForjobstepswhereSSISLogginghasbeenenabledthroughtheSentryOneClient,thesteplogisparsedanddisplayedasonerowperSSISevent.
8.13.2 EnablingSSISLogging
OnwatchedSQLServer2005andaboveinstances,SQLAgentjobswhichhaveoneormorestepswithasubsystemtypeofSQL Server Integration Services PackagewillhaveanSSISLoggingOptionscommandwithintheircontextmenu(thisincludesSQLServerMaintenance Planjobs).TheSSISLoggingOptionscommandmakesiteasytoenableordisableSSISLogging.
OnceSSISLogginghasbeenenabledforaSQLAgentjob,anewmessagetextlevelwillbeaddedbeneathanySSISjobsteps,inboththeEventCalendarstepcallouts,andinhistorylistviews.ArowwillbeaddedforeachSSISevent,uptothefirst512KBoflogdata.
WhenyouenableSSISLoggingforaSQLAgentjobthefollowingwilltakeplace:
1. AllSSISsubsystemstepswillbechangedtoCmdExecsubsystemsteps.2. Theappend/CONSOLELOGandotherappropriateparameterswillbeaddedtothecommandlineofeachSSISstep.
3. TheLog to TableoptionwillbesetforeachSSISstep.
SeeExtendedJobStepLoggingformoredetails.
LOGGINGLEVELTheSSISLoggingOptionsdialogallowsyoutosettheLoggingLeveltooneofthefollowing.
Setting Description
Disabled SSISLogdatawillnotbecollectedordisplayed.
SSISLogdatawillbecollectedanddisplayedforthefollowingpackage
SentryOne User Guide | 171
Enabled
events:
PackageStartPackageEndOnErrorOnTaskFailedOnWarning
Thisistherecommendedsetting.
Enabled(Verbose)
SSISLogdatawillbecollectedanddisplayedforallpackageevents.Sincelargeamountsofdatawillbecollectedandprocessedwithverboselogging,toavoidpossibleperformanceissuesitishighlyrecommendedthatthissettingonlybeusedfortroubleshootingpurposes,andimmediatelysetbackto"Enabled"whencomplete.
Note:SentryOnewillcollectandprocessonlythefirst512KBofSSISlogdataforeachjobstep.Typicallytheonlytimeajobwouldeverexceedthislimitiswhenverboselogginghasbeenenabled.
RUNASWhenenablingSSISLogging,usingtheRunAsdrop-downlist,youmayselecttorunthepackageasfollows:
RunAs Description
Keepcurrentproxysettings
WhenyouselecttheKeepcurrentproxysettingsoption,theaccountspecifiedwithintheJobSteppropertieswillbeusedtoruntheSSISjobstep.
Note:ThecurrentproxymusthaveactiverightstotheOperatingsystem(CmdExec)subsysteminordertoenableSSISloggingwithinSentryOne.
SQLAgentServiceAccount WhenyouselecttheSQLAgentServiceAccountoption,theSQLServerAgentServiceAccountwillbeusedtoruneachSSISjobstep,insteadoftheaccountspecifiedwithintheJobStepproperties.
Additionalproxyaccounts AdditionalproxyaccountswiththenecessaryOperatingsystem(CmdExec)subsystemrightswillalsobelistedasanoption.
ChangingtheSSISLoggingoptionsforajobwilltriggertheEventObject:PropertiesModifiedAuditConditionwithinSentryOne.
Setting Description
SentryOne User Guide | 172
9 SentryOnePerformanceAnalysis
SENTRYONE PERFORMANCE ANALYSISDashboard
DashboardResolutions/RetentionBaseliningPerformanceMetrics
ProcessesDiskActivityDiskSpaceTopSQL
PlanExplorer(integrated)PlanExplorerSessionsSQLPerformance.comPlanUploadPlanDiagramOptionsIndexAnalysis
TopSQLRuntimeStatsAlwaysOnQueryPlansIndexestab
FragmentationManagerSSASUsageTotalsBlockingSQLDeadlocksQuickTracesPerformanceAnalysisOverviewPerformanceAnalysisToolbarDataGridsVirtualMachineSupportcloud.sentryone.com
ServerDetailsServerHealthStatus
OPENINGTHEPERFORMANCEANALYSISDASHBOARDThePerformanceAnalysisDashboardcanbeopenedbyselecting(Open>PerformanceAnalysis)fromthecontextmenuofanyInstance.Itcanalsobeopenedbydouble-clickingtheInstanceandchoosingPerformanceAnalysisfromtheproductselectionform.
PERFORMANCEANALYSISTABSWhenusingSentryOnetomonitorSQLbasedtargetsandinstances(SQLServer,SSASorAzure
SentryOne User Guide | 173
SQLDatabase)theinterfaceconsistsoftheseveraltabs.Notalltabsareincludedforalltargetandinstancetypes.
→Dashboard
TheDashboardtabcontainsrelevantperformancedataforboththephysicalserverandSQLServer,allononescreen.Useittoviewrealtimedataorhistoricaldataforanypointintime.ThePerformanceMetricssectionoftheUserGuidecontainsadetaileddescriptionofthevariousperformancemetricsdisplayedontheDashboard.
→DiskActivity
TheDiskActivitytabcontainsagraphicalviewofyourserver'sdisktopology.UsetheDiskActivitytabtoquicklypinpointperformancebottlenecksatthedatabasefile,physicaldisk,orcontrollerlevelforSAS,NAS,ordirectattachedstorage.
ThistabisnotdisplayedforanAzureSQLDatabasetarget.
→DiskSpace
TheDiskSpacetabcontainsinformationaboutdiskspaceutilizationwithinyourenvironmentbydatabaseandfile.UsetheDiskSpacetabtoeasilyidentifydiskcapacityissuesandunderstandwherevariousdatabasefilesresideonthedisksystem.
ThistabisnotdisplayedforanAzureSQLDatabasetarget.
→Indexes
TheIndexestabdisplaysinformationthathasbeencollectedaboutyourtablesandindexesbyFragmentationManager.TheIndexestabcanbeusedtohelpyoumakeintelligentdecisionsaboutindexmanagementinyourenvironment:suchaswhenandhowtoperformdefragmentationoperations,whentoadjustfillfactors,orevenwhenanindexdefinitionshouldbechanged.
ThistabisnotdisplayedforanAzureSQLDatabasetargetorSSASinstance.
→AlwaysOn
TheAlwaysOntabdisplaysinformationaboutyourAlwaysOnenvironment,includingOverviewDiagramswithcompletetopology,HistoricalCharting,andadetailedlevelGridiviews.WhenyoumonitortheSQLServerinstancehostingthePrimaryReplicaofanavailabilitygroupwithSQLSentry,theentiretopologyofthatavailabilitygroupwillbedisplayedaspartoftheOverviewArea.Unwatchedinstanceshostingreplicasaredisplayedwithagraybackground.
ThistabisnotdisplayedforanAzureSQLDatabasetargetorSSASinstance.
→TopSQL(TopQueries,TopCommands)
TheTopSQLtabcontainsinformationaboutyourhighimpactworstperformingstoredprocedures,batches,andstatements.UsetheTopSQLtabtoquicklyidentifyandcorrecttheworstperformingoffenders.TheinformationTopSQLcapturescanbebasedonanycombinationofduration,cpu,reads,orwrites.FromtheTopSQLtabyoucanuseTheViewbuttoninthePlancolumntoopenaPlanExplorersessionforanycapturedquery.
TheQueryPlanstablistsallplanscollectedforTopSQLeventsforthespecifieddaterange.Thisprovidesadetailedchronologyofallqueryplan
SentryOne User Guide | 174
→QueryPlans changes,soyoucangobacktoanypointintimetoseewhenaplanchangemayhaveledtoaqueryperformanceproblem.
ThistabisnotdisplayedforanAzureSQLDatabasetargetorSSASinstance.
→BlockingSQL
TheBlockingSQLtabcontainsahierarchicalviewofblockingprocesschains.YoucanusetheBlockingSQLtabtoidentifyblockshappeninginreal-timeandkilltheoffendingprocess,oryoucanviewhistoricalinformationaboutanycapturedblocks.TheinformationBlockingSQLcapturesisbasedonaminimumblockdurationandcanbeadjustedasneeded.
ThistabisnotdisplayedforanAzureSQLDatabasetargetorSSASinstance.
→Deadlocks
TheDeadlockstabcontainsinformationaboutdeadlockshappeninginyourenvironment.UsetheDeadlockstabtoidentifyandcorrectDeadlocksinyourenvironment.DeadlockcapturescanbeturnedoffforindividualInstancesasneeded.
ThistabisnotdisplayedforanAzureSQLDatabasetargetorSSASinstance.
→QuickTraces
TheQuickTracestabcanbeusedexecuteanewQuickTraceorviewhistoricaldataaboutpastQuickTraces.UseQuickTracestogatherfullstatementandprocessleveldetailswhiletheproblemisstilloccurringwithoutlengthytracesetupandexecution.YoucanalsoautomateQuickTracestotakeplacewhenspecificconditionsaredetectedviatheRunQuickTraceAction.
ThistabisnotdisplayedforanAzureSQLDatabasetargetorSSASinstance.
WATCHINGASQLSERVERWITHSQLSENTRYThefollowingfeaturesareenabledwithSQLSentry:
PERFORMANCEANALYSISTABSJumpToCalendarcontextitemsaremadeavailablefromvariouspointsallowingyoutonavigatedirectlytoacalendarviewfortheactivedaterangeshowingallassociatedPerformanceAnalysisevents(TopSQL,BlockingSQLandDeadlocks)alongsideEventCalendareventssuchasSQLAgentJobs,andWindowsTasks.
NAVIGATORNeweventsourcenodesareaddedunderSQLServersforTopSQL,BlockingSQLandDeadlocks,enablingcalendarsandotherfunctionsforthesesources.
EVENTVIEWTheEventSourcestabhasnewoptionsforTopSQL,BlockingSQLandDeadlockstocontrolwhetherornotthesesourcesaredisplayedintheview.
CALENDARViewTopSQL,BlockingSQL,andDeadlocksonSQLServer,Device,andCustomViewcalendars.JumpToPerformanceAnalysiscontextitemsonallcalendareventswilltakeyoutothe
SentryOne User Guide | 175
selectedtabofPerformanceAnalysispresettothecurrentcalendardaterange.OpeningaTopSQL,Block,orDeadlockeventonthecalendarwilltakeyoudirectlyintoPerformanceAnalysiswiththateventselectedandexpanded.
PERFORMANCEANALYSISCONDITIONS,ACTIONS&SETTINGSPerformanceAnalysisconditionsareavailableintheConditionsPaneforSQLServerInstances:
BlockingSQLBlockingSQL:OutputContentMatchBlockingSQL:RuntimeThresholdMaxDeadlockDeadlock:OutputContentMatchTopSQLTopSQL:OutputContentMatchTopSQL:RuntimeThresholdMax
TheRunQuickTraceactionisavailableforcertainSentryOneconditions.ThisactionwillexecuteandsaveaQuickTracewhentheconditionistriggered,including:
EventChainNode:RuntimeThresholdMaxEventChain:RuntimeThresholdMaxPerformanceCounter:ThresholdMaxPerformanceCounter:ThresholdMinSQLServerAgentJob:BlockSQLServerAgentJob:RetrySQLServerAgentJob:RuntimeThresholdMaxSQLServer:BlockingSQLSQLServer:BlockingSQL:RuntimeThresholdMax
PerformanceAnalysissettingsareavailablefromtheSettingspane:BlockingSQLBlockingSQLSourceDeadlocksSourceTopSQLTopSQLSource
WINSENTRYWinSentrysupportsmonitoringWindowsTargets,eveniftheTargetdoesnothaveanactiveSQLServerinstallation.ThisgivesyoutheabilitytoindependentlymonitoranyWindowsTarget.Forinstance,youmayhaveaneedtoindependentlymonitorawebserver.Inthiscase,WinSentrydeliversacompletehistoricalrecordofwhichprocessesareconsumingwhichresources.
WinSentryincludesthePerformanceAnalysisDashboardandtheProcessestab.Ifyouare
SentryOne User Guide | 176
familiarwithSQLSentryyouwillrecognizetheWindowschartsfromthelefthalfoftheDashboard.SeveralenhancementshavebeenmadetotheDashboardwithWindowsonlymonitoringinmind.TheSystemMemoryandCPUUsagechartsnowcontainvisualrepresentationsforseveraldifferentwell-knownprocessgroups,includinggroupsforSSRS,SSIS,andIIS.Ifyouhaveaspecializedgroupofapplications,WinSentryevengivesyoutheabilitytodefineyourownwell-knownprocessgroups.
TheProcessestabisalsoincludedaspartofWinSentry.Thistabcontainsagridviewofalltheprocesseswhichyouarecollectinginformationabout,includingrelatedmetrics.Bydefault,processesareshownintheirwell-knownprocessgroups,givingyouacompletepictureofhowapplicationgroupsareconsumingresourceswithinyourenvironment.Processesarealsoauto-correlatedwithrelatedservices.
ADDINGAWINDOWSTARGETInordertomonitoraserverwithWinSentryyouwillfirstneedtoaddtheWindowstargettoyourinstallation.YoumayaddaWindowsTargetusingtheAddTargetcommandfoundintheright-clickcontextmenuofthefollowingNavigatorpanenodes:AllTargets(rootnode),Sitenode,orGroupnode.YoumayalsoaddatargetthroughtheFilemenu.
FromtheAddTargetdialogyouwillchooseWindowsComputerfromtheTargetTypedrop-downmenu.
Note:YoumaymonitortheindividualWindowsmachineswhicharepartofaWindowsCluster,butWinSentryisnotclusteraware.
9.1 Dashboard
Appliesto:SQLSentry,WinSentry,BISentry,VSentry,andDBSentry*Somefeaturesmaynotbeavailabletoalltargettypes.Pleasereadfurtherformoredetail.
ThePerformanceAnalysisDashboardprovidesanoverviewofdifferenttargetsandinstances,suchasWindowsandSQLServer.Thedashboarddisplaysthemostimportantmetricsusedfordetermininghealthandload.Performancedataisorganizedintotwoverticalpanes,splitintosmallersectionsdependentuponthetypeofdashboardyouareviewing.TheDashboardforaWindowsbasedtargetwithaSQLServerinstancewillshowWindowsoperatingsystemspecificmetricsintheleftpane,andSQLServerorSSASmetricsintherightpane.
PleaseseethePerformanceMetricssectionoftheUserGuideforadetaileddescriptionofthevariousperformancemetricsdisplayedontheDashboard.
MetricsforallSQLServerorSSASinstancesontheserverareintegratedintotheWindows Network: Total,CPU Usage: Total,andSystem Memorycharts,soyoucanquicklydetermineexactlyhowmuchofeachoftheseresourcesisbeingusedbyeachinstance,foranypointintime.Whenhoveringovercoloredsectionsofthesechartsthecorrespondinginstancewillbedisplayed.Notethateachinstancehasauniquecolorassignedtoitthatremainsconstantacrossallcharts.
Forperformancereasons,thedashboardneverqueriestheremoteserverdirectly--alldatais
SentryOne User Guide | 177
retrievedfromtheSentryOnedatabaseafterithasbeencollectedbytheSentryOneMonitoringService.Thismeansthattheremaybeaslightdelaybetweenthetimetheperformancedatawascollectedandthetimeit'sdisplayedonthedashboard,althoughthisistypicallynomorethanafewseconds.
Wheninrealtimemode(auto-refreshisenabled),thechartsandgaugeswillupdateautomaticallyapproximatelyevery10secondstoshowthevaluesforthelastcollectedsample.
DASHBOARDDISPLAYMODESTheDashboardhastwodisplaymodes:SampleandHistory.Thedisplaymodecanbechangedatanytimebytogglingthemodetoolbarbutton.Notethegraphicandthetextwillchangewhentoggled,andwillalwaysindicatethemodethatwillbecomeactivewhenyouclickthebutton,versusthecurrentlyactivemode.
Samplemodeusesvariousbarchartsanddigitalgaugestoshowactivityforaspecifictime,orsampletime.Thismodeincludescertainmetricsthataren'tavailableinHistorymode,suchasNetwork Activity by Adapter,CPU Usage by individual Processor,andSQL Server waits by specificwait class.
Note:InSamplemode,aQuickReportcanberundirectlyfromanyofthegaugesbyright-clickingthegaugeandselectingQuickReportfromthecontextmenu.Forexampleright-clickintheUserConnectionsgaugeandchooseQuickReport.
HistorymodeuseslineandstackedareachartstoshowyouhowtheWindowsserverandSQLServerhavebeenperformingoveranytimerange.TherangecanbechangedbyadjustingtheStartand/orEndTimesonthetoolbar,thenclickingtheGobutton.Thereisnorestrictiononthesizeoftherange,althoughtheresolutionofthedatadisplayedwillchange,growinglessdetailedasyouzoomout.Forexample,foranyrangesizeof30minutesorlessyouwillbeviewingtheactualrawperformancedata,andifyouzoomouttoan8hourrange,10-minuteaverageswillbedisplayed.FormoreinformationseetheDashboardResolutions/Retentiontopic.
CUSTOMIZINGSQLSERVERWAITSCHARTYoucancustomizetheSQLServerWaitshistoricalchartbyaddinganadditionalcategorytothePerformanceAnalysisWaitTypeCategorytable,thenassigningcountersinthePerformanceAnalysisWaitTypetabletothenewlycreatedcategory.
Forexample,youcouldcreateanewcategoryforparallelismbyusingthefollowingquery.NewCategoryCreation
INSERT INTO [SentryOne].[dbo].[PerformanceAnalysisWaitTypeCategory] (Name, SortOrder, Enabled, RGBColor) VALUES ('Parallelism',6,1,'#bb7fd1')
AftercreatingtheParallelismcategory,youcanaddacountertoit.AddingaCountertotheCategory
UPDATE [SentryOne].[dbo].[PerformanceAnalysisWaitType] SET WaitTypeCategoryID = 7 WHERE Name = 'CXPACKET'
INTERACTINGWITHTHEDASHBOARD
SentryOne User Guide | 178
ChangingtheactiveSQLServer/SSASinstance
YoucanchangetheSQLServerorSSASinstanceusingtheInstancedropdowncontrolinthetopmiddleofthescreen.Themetricsintherightpanewillreload,buttheactivedaterangeandotheroptionswillbemaintained.
ThefollowingfunctionsareavailablewheninHistorymode:
Tooltips
Hoveroveranypointonthecharttoseetooltipswithspecificsaboutthesample,includingthesampleinstancename,time,andvalue.
SampleSelection
Clickingonahistorychartwillpresentaverticalredlineatthatpositioncalledacursor.TheselectedtimeisindicatedbytheSamplePosboxatthetopright.Thecursorissynchronizedacrossallchartssothatyoucaneasilycorrelatewhatwashappeningwithoneperformancemetricwithwhatwashappeningwithotherrelatedmetricsatthatsametime.
Afterselectingasamplewiththecursor,ifyoutoggletheModebutton,thedetaildatafortheselectedtimewillbeloadedinsamplemode,allowingyoutoseespecificsforthatsamplethataren'tavailableinhistorymode.Forexample,ifyouclickonaspikeontheSQLServerWaitschartandchangetosamplemode,youcanseethespecificwaitclasseswereresponsibleforthespike,whereasinhistorymodeonlygeneralwaitcategoriesaredisplayed.
ClickandHold
Ifyouclickandholdasample,afterashorttimethecursorwillchangecolor,andwhenyoureleasethemouseyou'llbepresentedwiththeasubsetoftheJumpTocontextitemsusedforrangeselection(below),allowingyoutojumpdirectlytoadifferenttabandviewonlyoperationsthatoverlappedthecurrentlyselectedsampletime.
RangeSelection
Clickonahistorychartanddragthecursortoselectarange.TheRangeStartandRangeEndboxeswillupdate,andwhenyoureleasethemousebuttoncontextitemswillbepresentedtoallowyoudochoosewhethertoZoomIntotheselectedrange,orJumpToanotherpartoftheapplicationusingtheselectedrange.Forexample,ifyouselectarangethatincludesaspikeinnetworkactivity,thenselectJumpTo->TopSQL,theTopSQLtabwillbedisplayedandloadedonlywithqueriesthatranduringthatrange,enablingyoutodeterminewhichqueriesmayhavebeenresponsibleforthenetworkspike.
NotethatwhenyouuseaJumpTooption,theSynctoolbarbuttonwillautomaticallybedeactivated,sincethetoolbardaterangesforthedifferenttabswillnolongerbeinsync.ThisallowsyoutojumpbackandforthbetweentheDashboardandtheothertabsusingJumpTowithdifferentsub-ranges,withoutlosingtheoriginalfullrangedisplayedontheDashboard.YoucanreactivateSynchronizeTabsatanytime,justrememberthatallothertabswillimmediatelyusetherangethat'svisibleandactiveonthetoolbarforthecurrenttab.
ContextMenus
Note:Notalltargetdashboardswillincludeallthecontextmenusdescribedbelow.Forexample,sinceQuickTraceisnotavailableonAzureSQLDatabasethecontextmenuforthat
SentryOne User Guide | 179
featurewillnotbeshown.
SampleModeContextMenus
ShowHistoryMode-changestheviewtohistorymode.QuickTrace-runaQuickTrace.ShowWindowsProcesses-displaysWindowsprocessesrunningontheserver
HistoryModeContextMenus
ShowSampleMode-changestheviewtosamplemode.QuickTrace-runaQuickTrace.ShowWindowsProcesses-displaysWindowsprocessesrunningontheserver.ZoomIn-Zoomintotheselectedrange.JumpTo-JumptoanotherPerformanceAnalysistaborEventCalendarwiththeselecteddaterange.
Controls
SampleMode
Network
Total-displaysnetworkactivityasanaggregateacrossalladapters,withSQLServer/SSASactivityintegrated.
Adapters-displaysactivitybytheindividualnetworkadapter,enablingyoutospotadapter-specificsaturationissues.
HistoryMode
DiskIO
Total-displaysaveragelatencyacrossallphysicaldisks.
ByDisk-displaysactuallatencyforaspecificphysicaldisk.
DatabaseIO
Total-displaysaveragelatencyacrossalldatabasefiles.
ByDatabasefile-displaysactuallatencyforaspecificdatabasefile.
USINGQUICKTRACE™QuickTracegivesyouaninstantsnapshotofwhatalloftheprocessesonaSQLServerarecurrentlydoing.Traceandprocess-leveldataiscollectedforaspecifiedintervalandthenautomaticallycorrelated,effectivelycombiningthefunctionalityofProfilerandActivityMonitortogetherwithasingleclick.YoulaunchQuickTracebyclickingtheQuickTracetoolbarbutton,byright-clickingaTargetintheNavigatorpane,ordirectlyfromthedashboardbyright-clickinganychart.Forexample,ifyouobserveaspikeinactivitywheninrealtimemode,youcanimmediatelylaunchQuickTraceandseeexactlywhichSQLServerprocessesorapplicationsareresponsibleforthespike.
QuickTraceisnotsupportedonanAzureSQLDatabasetarget.
SeetheQuickTracestopicsformoredetails.
VIEWINGWINDOWSPROCESSACTIVITY
SentryOne User Guide | 180
YoucanseemetricsforallWindowsprocessesusingShowWindowsProcessesfunctiondirectlyfromSentryOne,toavoidhavingtoopenaRemoteDesktopconnectiontoaserverandopenWindowsTaskManager.TheProcessActivitywindow,whichissimilartoTaskManager,willloadlistingallactiveoperatingsystemprocesses,sorteddescendingbyCPUbydefault.YoucanlaunchtheProcessActivitywindowusingtheShowWindowsProcessestoolbarbutton,byright-clickingaTargetintheNavigatorpane,ordirectlyfromthedashboardbyright-clickinganychart.
LikeotherSentryOnegrids,toeliminatebackgroundnoise,rowswithzerovaluesinthesortcolumnarehiddenbydefault.Youcanunhidethembyuncheckingtheassociatedoptionatthebottomofthescreen.
ViewingWindowsProcessActivityisnotsupportedonanAzureSQLDatabasetarget.
Note:AdministrativeaccesstothetargetserverisrequiredinordertolaunchtheProcessActivityviewer.
EVENTOVERLAYSSpecificeventstakingplaceinyourenvironmentcanalsobeoverlaidonthePerformanceAnalysisDashboard.ThisfeaturecanbeaccessedviatheJumpToDashboardoptionfromanumberofplaceswithintheSentryOneClientwhichdisplayarangeofhistoricalevents,includingany;EventCalendar,TopSQLtab,Blockingtab,orQuickTracestab.
WhenyouusetheJumpToDashboardfeature,eventsareoverlaidonthex-axisforeachchart.Thestartofeachdistincteventwillbearepresentedwithagreencircle,withtheevent'sdurationrepresentedwithapinkline,endinginapinkdot.Hoveringoveraneventwilldisplayatooltipaboutthatevent.
Iftheselectedtimerangeisnotlargeenough,eventswillberepresentedsimplybyagreencircle.Ifthisisthecase,changingthetimerangetoasmallerintervalwillpreservetheoverlayoftheevent,andmayofferabetterviewoftheimpactthateacheventhad.
FromtheEventCalendar
WhenusingtheJumpToDashboardfeaturefromtheEventCalendaranyeventswhicharehighlightedviatheCalendarHighlightingfeaturewillbeoverlaidontheDashboard.
FromtheTopSQLtab
WhenusingtheJumpToDashboardfeaturefromtheTopSQLtab,iftheShowTotalsmodeisenabledalleventsbelongingtotheselectedgroupwillbeoverlaidontheDashboard.IftheDefaultmodeisenabledonlytheselectedeventwillbeoverlaidontheDashboard.
FromtheBlockingorQuickTracestab
WhenusingtheJumpToDashboardfeaturefromtheBlockingorQuickTracestabtheselectedeventwillbeoverlaidontheDashboard.
9.1.1 DashboardResolutions/Retention
Appliesto:SQLSentry,WinSentry,BISentry,VSentry,andDBSentry
DASHBOARDRESOLUTIONSThePerformanceAnalysisDashboardwilldisplaymetricsatdifferentresolutionlevels,
SentryOne User Guide | 181
dependingonthehistoricaltimerangewhichisselectedinthetoolbar.WheneveryouareviewingtheDashboardineitherSamplemode,orinHistorymoderangesof30minutesorless,therawsamplescollected(detaildata)willbedisplayed.Thisdetailleveldatahasacollectionfrequencyofanywherefrom10secondsto1minute,dependingonthemetric.Asyouexpandthetimerangeyouareviewing,averagesovertheindicatedresolutionintervalareshown.
TimeRange Resolution
0<=30min DetailData
30min<=8hrs 2min
3hrs20min<=36hrs 10min
12hrs<=5days 30min
2days<=20days 2hrs
3days8hrs<=40days 4hrs
10days<=1year 1day
20days<=2years 2day
30days<=3years+ 3day
HISTORICALDATARETENTIONPerformanceAnalysisusestheSentryOneDatabasetostorealloftheperformancedataitcollects.Performancedataisrolleduporaveragedbasedontheageofthedata.Oncedatabecomesoldenoughtomoveintothenextrangeitwillberepresentedbyanaverageoverthetime.Thedefaultsettingsfordataretentionforthedifferentresolutionsarelistedbelow:
Resolution RetentionLength
DetailData 3days
2min 5days
10min 10days
30min 20days
2hour 40days
4hour 60days
1day 1year
2day 2years
3day 3years
EXAMPLE 1:ADBAcomesintoworkonMondayandwantstoinvestigateaperformancerelatedissuethathappenedlateFridayafternoon.Sincedetaildataisretainedfor3days(72hours)theywillbeabletoaccessitusingthemostgranulardetailresolution(0<=30min.).
EXAMPLE 2:ADBAwantstocompareperformancedataforthelasttwomonths(60days).Thedatawillneedtobecomparedusingthevaluesforthe4hourresolution,sincethatistheresolutionavailableat60daysbydefault.
NOTE:Thedataretentionperiodcanbecustomizedforspecificneeds.SeetheSentryOneDataCapacityPlanningarticleformoreinformation.
SentryOne User Guide | 182
9.1.2 Baselining
Appliesto:SQLSentry,WinSentry,BISentry,VSentry,andDBSentry
BaselinescanbecreatedandmanagedfromtheHistoryviewofthePerformanceAnalysisDashboard.Therearetwodistinctbaselinetypesavailable.ThefirsttypeofbaselineisthePredefinedtype.SentryOneincludesseveralpredefinedbaselineswhicharebasedonthehistoricalmetricsgatheredinyourmonitoredenvironment.ThesecondtypeofbaselineistheCustomtype.SentryOnealsoallowsyoutodefineyourowncustombaselines.
Onceabaselinehasbeenselected,itisoverlaidonthevariousPerformanceAnalysisDashboardcharts,givingyou“ataglance”informationthatcanhelpyoutomanagechangeinyourmonitoredenvironment.CustombaselinescanalsobeusedinAdvisoryConditions,allowingthecomparisonofbaselinevaluestolivemetrics,astheyarecaptured.
Atthistimeyoucannotdisplayabaselinecreatedbyonetypeoftargetoverlaidonadifferenttypeoftarget.Forexample,creatingabaselineagainstaSQLServerInstancerunningonaWindowsTargetcannotbethenoverlaidonanAzureSQLDatabasedashboard.
PREDEFINEDBASELINESPredefinedbaselinesareavailablewithoutanycustomconfiguration.TheycanbeaccessedfromtheBaselinedrop-downmenuontheDashboardwhileinHistoryview.ThedifferentpredefinedbaselinesareavailablebasedonthehistoricaltimerangeyouareviewingontheDashboard.Referencethetablebelowformoreinformation:
Baseline TimeRangeAvailability RangeOptionAvailability(detaildata)
PreviousPeriod Isalwaysavailable.Correspondstotheimmediateprecedingtimeframe. Yes
PreviousDay 0<=24hrs Yes
PreviousWeek 0<=168hrs Yes
PreviousMonth 36<=720hrs No
PreviousQuarter 480<=2160hrs No
PreviousYear 960<=8760hrs No
AVERAGEANDRANGEMODESItisimportanttounderstandthatpredefinedbaselinesarebasedonthehistoricaldatacollectedinyourmonitoredenvironment.Thegranularityofthedata-pointswhichmakeupabaselineisentirelydependentonthetimerangeyouareviewing.
AVERAGEBydefault,predefinedbaselinesareshownwithdata-pointswhichshowtheaveragevalueoverthatsampleperiod.
RANGEWhenviewingcertainpredefinedbaselines,withinatimerangewhichhasaresolutionofdetaildata,anadditionaloptionwillbeavailable,allowingyoutoviewthatbaselinewithaRangeofvalues(referencetheRangeOptionAvailabilitycolumninthechartabove).Thisrangeincludesbothaminimumandmaximumvalueobservedduringtherespectivesampleperiod.
SentryOne User Guide | 183
CUSTOMBASELINESCustombaselinescanbecreatedondemandviatheDashboarduserinterfacewhileinHistoryview.Tocreateacustombaseline,firstleft-clickonanyDashboardchartanddragtohighlightyourdesiredtimeframe.Next,selecttheCreateBaselineoptionavailablefromthecontextmenu.TheCreateBaselineformwillbedisplayed.
CREATEBASELINEFORMTheCreateBaselineformcontainsinformationaboutallofthemetricswhicharecapturedaspartofacustombaseline.Seebelowforcolumnexplanations.
Metric Thenameofthemetriccapturedinthebaseline.
Default DefineswhichmetricintheChartwillbeusedwhendisplayingthebaseline.Note:Thiscanbechangedatanytime.
Average
Averageisthevaluewhichwillbeusedforthatparticularmetricinthebaseline.ThiscontrolsboththeactuallinedisplayedontherespectivechartandthevalueusedforcomparisonpurposesinAdvisoryConditions.Averageiscalculatedbasedontheobservedvaluesfortheparticularmetricwithinthebaseline'stimerange.
Todefinecustomvaluestobeusedwiththebaseline,simplyeditthepre-calculatedAveragevalue.
Min Theminimumvaluecapturedduringthebaseline'stimerange.
Max Themaximumvaluecapturedduringthebaseline'stimerange.
StandardDeviation Thestandarddeviationforthevaluescapturedduringthebaseline'stimerange.
USINGCUSTOMBASELINESINADVISORYCONDITIONSThevaluesdefinedformetricswhichmakeupacustombaselinecanbeusedinAdvisoryConditions.ToaccessabaselineinaAdvisoryCondition,youwillneedtodefinetheAdvisoryConditionatthatsameInstancelevelatwhichthebaselineisdefined.Forexample,ifyoucreateabaselineontheservernamedLONDON.UK.COM,inordertoaccessthebaselineinanAdvisoryCondition,youwillneedtocreatetheAdvisoryConditionfromthecontextoftheLONDON.UK.COMserverintheNavigatorpane.Foranin-depthlookatAdvisoryConditionsseetheAdvisoryConditionstopic.
BASELINESANDPERFORMANCECOUNTERMAPPINGWhenusingbaselinesinAdvisoryConditionsyouwillneedtoreferencethefollowingtableswhichincludesthemappingbetweenthemetricscapturedinbaselinesandtheirassociatedfriendlyPerformanceCounternames.
SQLServerBaselineMapping
Chart Metric AssociatedExposedPerformanceCounter(AdvisoryConditionformat)
Backup/Restore
BackupMB/sec SQLServerDatabaseEngine:SQLServer:Databases:Backup/RestoreMB/sec
CacheHitRatios
PageLifeExpectancy(sec) SQLServerDatabaseEngine-BufferNode-PLE:Equals:"NodeName"
SQLPlans SQLServerDatabaseEnginePlanCacheHitRatio:Equals:SQLPlans
ObjectPlans SQLServerDatabaseEnginePlanCacheHitRatio:Equals:ObjectPlans
SentryOne User Guide | 184
Checkpointpgs|Lazywrites
Checkpointpages/sec SQLServerDatabaseEngineSQLServerBufferManager:Checkpointpgs
Lazywrites/sec SQLServerDatabaseEngineSQLServerBufferManager:Lazywrites/sec
CPUUsage
TotalCPUUsage% Windows:ProcessorInformation:%ProcessorTime:Total
DatabaseLatency
Totalms/Read SQLServerDatabaseEngine:SQLServerVirtualFileStatistics:ms/Read
Totalms/Write SQLServerDatabaseEngine:SQLServerVirtualFileStatistics:ms/Write
DiskIO
Totalms/Read Windows:PhysicalDisk:ms/Read
Totalms/Write Windows:PhysicalDisk:ms/Write
Faults(Read|Write)
Faults:Read Windows:Memory:Faults:Read
WriteFaults:Write Windows:Memory:Faults:Write
Keylookups|Fwdedrecs
Keylookups/sec SQLServerDatabaseEngine:SQLServer:AccessMethods:Keylookups/sec
Forwardedrecords/sec SQLServerDatabaseEngine:SQLServer:AccessMethods:ForwardedRecords/sec
LogFlushes
LogFlushes/sec SQLServerDatabaseEngine:SQLServer:Databases:Logflushes/sec:Total
NetworkIn
In% Windows:NetworkInterface:Received%:Total
Networkout
Out% Windows:NetworkInterface:Sent%:Total
Pages
Pagereads/sec SQLServerDatabaseEngine:SQLServer:BufferManager:Pagereads/sec
Pagewrites/sec SQLServerDatabaseEngine:SQLServer:BufferManager:Pagewrites/sec
SQLActivity
Batches/sec SQLServerDatabaseEngine:SqlServer:SQLStatistics:Batches/sec
Transactions/sec SQLServerDatabaseEngine:Databases:Transactions/sec:Total
Compiles/sec SQLServerDatabaseEngine:SQLServer:Statistics:Compiles/sec
Recompiles/sec SQLServerDatabaseEngine:SQLServer:Statistics:Recompiles/sec
SQLServerMemory
TotalSQLMemoryUsage(MB)
SQLServerDatabaseEngine:SQLServer:BufferNode:Databasepages:Total
SQLServerWaits
TotalWaitTime(ms) SQLServerWaitStatistics:WaitsbyCategory:Total
SystemMemory
TotalMemoryUsage(MB) Windows:Memory:TotalusedMemory(MB)
SSASBaselineMapping
Chart Metric AssociatedExposedPerformanceCounter(AdvisoryConditionformat)
CPUUsage
TotalCPUUsage% Windows:ProcessorInformation:%ProcessorTime:Total
Chart Metric AssociatedExposedPerformanceCounter(AdvisoryConditionformat)
SentryOne User Guide | 185
DiskIO
Totalms/Read Windows:PhysicalDisk:ms/Read
Totalms/Write Windows:PhysicalDisk:ms/Write
Faults(Read|Write)
Faults:Read Windows:Memory:Faults:Read
Faults:Write Windows:Memory:Faults:Write
NetworkIn
In% Windows:NetworkInterface:Recieved%:Total
Networkout
Out% Windows:NetworkInterface:Sent%:Total
SSASActivity:RowsTransferred
Queryrowssent/sec SSAS:StorageEngineQueryrowssent/sec
Processingrowsread/sec SSAS:Processing:Processingrowsread/sec
SSASActivity:ThreadsFormulaEngine
Querypoolbusythreads SSAS:Threads:Querypoolbusythreads
Querypooljobrate SSAS:Threads:Querypooljobrate
Querypooljobqueuelength SSAS:Threads:Querypooljobqueuelength
SSASActivity:ThreadsStorageEngine
Busy SSAS:Threads:ProcessingpoolbusyI/Ojobthreads
Processingpooljobrate SSAS:Threads:ProcessingpoolI/Ojobcompletionrate
Queued SSAS:Threads:ProcessingpoolI/Ojobqueuelength
SSASGeneral:AvgTime
TotalWaitTime(ms) SSASTraceWaits:TotalWaitTime(ms)
SSASGeneral:MDX
Cellscalculated/sec SSAS:MDX:Cellscalculated/sec
Calculationcovers/sec SSAS:MDX:Calculationcovers/sec
Sonarsubcubes/sec SSAS:MDX:Sonarsubcubes/sec
Recomputes/sec SSAS:MDX:Recomputes/sec
NONEMPTYunoptimized/sec SSAS:MDX:NONEMPTYunoptimized/sec
NONEMPTYforcalculatedmembers/sec SSAS:MDX:NONEMPTYforcalculatedmembers/sec
SSASGeneral:Processing
Processingrowswritten/sec SSAS:Processing:Processingrowswritten/sec
Indexrowscreated/sec SSAS:ProcIndexes:Indexrowscreated/sec
Aggregationrowscreated/sec SSAS:ProcAggregations:Aggregationrowscreated/sec
SSASMemUsage(MB)
TotalCleanerMemory(MB) SSAS:Memory:TotalCleanerMemory(MB)
TotalCategoryMemory(MB) SSAS:Memory:usagebyCategory:TotalmemoryUsage(MB)
SSASMemory:CacheActivity
Cacheinserts/sec SSAS:Cache:Cacheinserts/sec
Cacheevictions/sec SSAS:Cache:Cacheevictions/sec
Flatcacheinserts/sec SSAS:MDX:Flatcacheinserts/sec
KBadded/sec SSAS:Cache:KBadded/sec
KBshrunk/sec SSAS:Memory:KBshrunk/sec
Chart Metric AssociatedExposedPerformanceCounter(AdvisoryConditionformat)
SentryOne User Guide | 186
SSASMemory:CacheLookups
Dimensioncachehits/sec SSAS:Cache:Lookups/sec
Measuregroupcachelookups/sec SSAS:StorageEngineQuery:Measuregroupcachelookups/sec
Calculationscachelookups/sec SSAS:StorageEngineQuery:Calculationscachelookups/sec
Flatcachelookups/sec SSAS:StorageEngineQuery:Flatlookups/sec
SSASStorage:CurrentPartitions
Indexes SSAS:ProcIndexes:Currentpartitions(indexes)
Aggregations SSAS:ProcAggregations:Currentpartitions(aggregations)
SSASStorage:FileQueries
Totalqueriesfromfile/sec SSAS:StorageEngineQuery:Totalqueriesfromfile/sec
Aggregationhits/sec SSAS:SSASTrace:Aggregationhits/sec:Total
SSASStorage:FileReadKB
TotalSystemFileReadKB Windows:System:TotalSystemreadKB/Sec
SSASStorage:FileWriteKB
TotalSystemFileWriteKB Windows:System:TotalSystemwriteKB/Sec
SystemMemory
TotalMemoryUsage(MB) Windows:Memory:TotalusedMemory(MB)
Chart Metric AssociatedExposedPerformanceCounter(AdvisoryConditionformat)
9.1.3 PerformanceMetrics
PERFORMANCE METRICSThistopiccoversthevariousperformancemetricsdisplayedbythePerformanceAnalysisDashboardandPerformanceAnalysisOverview,andhowtointerpretdifferentmetricvaluesandcombinationsofvaluesacrossdifferentmetrics.
WindowsMetrics
Network
Totalnetworkutilization
UtilizationbySQLServer/SSASinstance
Utilizationbynetworkadapter
Networkoutputqueuelength
CPUUsage
Totalprocessortime
UsertimebyCPU
KerneltimebyCPU
%GuestRuntime
vCPUWaitTime
ProcessortimebySQLServer/SSASprocess
ContextSwitches
Processorqueuelength
SystemMemory
MemorybySQLServer/SSASinstance
Otherprocessesmemory
FileCachememory
AvailableMemory
Balloonedmemory
ReadFaults
WriteFaults
Pagefileusage
DiskIO
Readlatencybyphysicaldisk
Writelatencybyphysicaldisk
SentryOne User Guide | 187
SQLServerMetrics
SQLServerActivity
UserConnections
BlockedProcesses
Batches
Transactions
Compiles
Recompiles
Keylookups
Forwardedrecords
BackupMB/sec
SendQueue/RedoQueue
SQLServerWaits
CPU%ofTotalWaits
WaitTime:byCategory
WaitTime:byClass
SQLServerMemory
Buffercachesize
Plancachesize(SQL)
Plancachesize(Objects)
Othercachesize
Plancachehitratio(SQL)
Plancachehitratio(Objects)
Pagereads
Pagewrites
Pagelifeexpectancy
Memorygrantspending
DatabaseIO
Readlatencybydatabasefile
Writelatencybydatabasefile
Checkpointpages
LazyWrites
LogFlushes
Hyper-VHostMetrics
CPUUsage(VM)
UtilizationbyVirtualMachineGuest
UsagetimebyGuest
vCPURootusagetime
%GuestRuntime
vCPUWaitTime
SystemMemory(VM)
MemorybyVirtualMachineGuest
DiskIO(VM)
IOPS(Read)
IOPS(Write)
ReadThroughput
WriteThroughput
AzureSQLDatabaseMetrics
DTUUsage
TotalDTU%
CPU
DataIO
LogIO
MemoryUsage
AllocatedMemoryUsage
DatabaseSize
SizeinGB
SQLServerActivity
UserConnections
BlockedProcesses
Transactions
SentryOne User Guide | 188
BackupMB/sec
SQLServerWaits
CPU%ofTotalWaits
WaitTime:byCategory
WaitTime:byClass
SQLServerMemory
BufferCacheSize
PageLifeExpectancy
DatabaseIO
ReadLatencybyDatabaseFile
WriteLatencybyDatabaseFile
LogFlushes
VMWareHostMetrics
CPU
Ready
Memory
Active
Consumed
Overhead
Granted
WINDOWSMETRICS
Section PerformanceMetric Type Description ModesS=SampleH=History
WarningRange
CriticalRange
Maycorrelatewith
Network Totalnetworkutilization % Thetotalcombined%utilizationforalladaptersontheserver. S,H CPUUsage:Kerneltime
Network UtilizationbySQLServer/SSASinstance %
The%utilizationforeachinstanceisoverlaidontopofthetotal%utilization,enablingyoutoseehowmuchofthenetworktrafficisrelatedtoSQLServer,SSAS,orotherprocessesontheserver.
IfSQLServer-relatednetworkactivityishigh,useQuickTracetodeterminewhichprocessesmayberesponsible.
S,H
Network Utilizationbynetworkadapter Mb/sec SelecttheAdaptersradiogroupitemtoviewactivityforupto4networkadaptersontheserver.Thisenablesyoutospotadapter-specificsaturationissues. S CPUUsage:Kerneltime
Network Networkoutputqueuelength LastvalueThelengthofthenetworkoutputpacketqueue,inpackets.Thisisthetotalvalueacrossalladaptersonthemachine.Asustainedvalueof>3mayindicateanetworkbottleneck. S >3
>3formorethanapprox.20sec
CPUUsage Totalprocessortime % Thetotalprocessortime%acrossallprocessorsontheserver.Asustainedvaluegreaterthan80%generallyindicatesaCPUbottleneck. S
CPUUsage UsertimebyCPU % Theusertime%foreachindividualCPU.Representedbythecolorgreen.IfusertimeforindividualCPUsareatornear100%forasustainedperiod,SQLServerorotherapplicationsmaynotbeparallelizingeffectively. S,H >85% >95%
CPUUsage KerneltimebyCPU %
Thekernel(orprivileged)time%foreachindividualCPU.Representedbythecolorred.Kerneltimeshouldtypicallybe<40%total,and<25%ofusertime.IfkerneltimeforindividualCPUsarehighforasustainedperiod,adrivermayberesponsible.Forexample,anetworkdrivermaycausehighkerneltime,anditmaybeisolatedtospecificCPUs,inwhichcaseitmaycorrelatewithnetworkactivity.
S
Networkactivity
CPUUsage ProcessortimebySQLServer/SSASprocess %
CPUtimerelatedtoSQLServerandSSASprocessesisoverlaidontopofthetotalCPUseries.NotethatthereisonlyoneSSASchartseriesanditrepresentsallSSASinstancesontheservercombined.
UseTopSQLandQuickTracetodeterminewhichqueriesareutilizingthemostCPUresources.
S,H
SQLServer:Compiles,recompiles,batches,transactions,keylookupsCPUwaittimeQueries:parallelism,hashjoins,sortoperationsIndexrebuilds&defragConsistencychecks
SSAS:FormulaEnginetimeCellscalculatedRecomputesFlatcachelookupsAggregationrowscreated
CPUUsage %GuestRuntime* %
FortheHyper-VHypervisorLogicalProcessor,theaveragepercentageoftimeguestcodeisrunningonanLogicalProcessor.SeeAlso:https://blogs.technet.microsoft.com/chrisavis/2013/03/25/performance-management-monitoring-cpu-resources/
S,H
CPUUsage vCPUWaitTime* %
The%timetheguestvirtualmachinespentwaitingforaHostkernelresource.SeeAlso:https://www.sqlskills.com/blogs/jonathan/hyper-v-equivalent-to-vmware-cpu-ready-time/
S,H
CPUUsage Contextswitches Avg/secThecombinedrateatwhichallprocessorsonthecomputerareswitchedfromonethreadtoanother.Consistentlyhighvaluescanmeanthattheserverisspendingtoomuchtimeswitchingthreadsinsteadofactivelyrunningthreads.
S>5,000times#ofprocessors
>7,500times#ofprocessors
CPUUsage:Kerneltime
CPUUsage Processorqueuelength LastvalueThenumberofthreadsintheprocessorqueue.Ifthisvaluegoesover2perprocessor,andCPUusageforSQLServerishigh,itcanbeindicativeofhighcompiles/recompiles,orahighrateofkeylookups,whichcanoftenbeaddressedbycoveringindexes.UseQuickTracetotroubleshoot.
S >2timesthe
#ofprocessors
SystemMemory MemorybySQLServer/SSASinstance MB
TheamountofphysicalmemoryusedbyeachSQLServerandSSASinstance.Importantfordeterminingwhetheravailablememoryisbeingusedeffectively,andwhetherornotthereismemorycontentionbetweenmultipleinstancesonthesameserver.
S,H
SystemMemory Otherprocessesmemory MB TheamountofphysicalmemoryusedbyallprocessesontheserverotherthanSQLServerorSSAS.NotethatifaSQLServerorSSASinstanceisn'tbeingwatchedbySentryOne,thememoryituseswillbeincludedhere. S,H
SystemMemory FileCachememory MB
Theamountofphysicalmemorycurrentlyallocatedtothesystemfilecache.
SSAS--SSASdatabasefilesmaybeloadedintoandservedfromthefilecache,eveniftheassociatedfiledatadoesn'texistintheSSASinternalcaches.Forthisreason,monitoringthefilecacheisimportanttoensurethatphysicalmemoryisbeingusedeffectively,andthatmemorycontentiondoesn'toccurbetweentheSSASprocess,thefilecache,andotherprocessesontheserver.
SQLServer--ThisisnotaparticularlyimportantmetrictomonitorfordedicatedSQLServers.
S,H
Memoryballooningallowsaphysicalhosttorecaptureunusedmemoryonavirtualmachine,anduseitelsewhere.Theportionofmemorybeing
SentryOne User Guide | 189
SystemMemory Balloonedmemory** MB
balloonedisdeterminedindifferentwaysdependingonthehypervisor.
(Hyper-V)SeeAlso:https://blogs.msdn.microsoft.com/saponsqlserver/2013/08/31/virtualization-overcommitting-memory-and-how-to-detect-it-within-the-vm/(VMware)SeeAlso:http://pubs.vmware.com/vsphere-55/index.jsp?topic=%2Fcom.vmware.vsphere.monitoring.doc%2FGUID-88CA95AD-A583-4EF6-838E-D92C87B0BB00.html
S,H
SystemMemory Availablememory MB
Theamountofphysicalmemorynotinusebyanyprocesses.Ifthisvalueisconsistentlyverylow,itcanbeastrongindicatorofmemorypressure.Whenavailablememorygetstoolow,WindowswillsignalapplicationslikeSQLServerofthelowmemorycondition,andthiscancauseSQLServertopageitsowndatatodisk.Forthisreasonit'sgenerallyagoodideatohaveafewhundredMBavailable,toavoidthissignaling,andsoWindowscanmakeuseofitasneeded.
S,H
<100MB
SystemMemory Readfaults Avgpages/sec
PagesreadfromdiskintomemorybyWindows.Thismetricincludesbothpagefileandfilereads,butnotSQLServerfilereads.Hardfaultscanbecausedbyvariousactivities,including:-copyingfiles,locallyoracrossthenetwork-anti-virusorothersecurity-relatedscans-fileindexingactivitybyWindowsorotherappsincludingSQLServerfulltextindexing-SQLServerbackupswrittentothelocaldisksystem.
Ifhighhardfaultscorrelatewithhighnetworkactivity,itmayberelatedtocopyingfilesacrossthenetwork,suchaswithWindowsbackupsoftware.Ifthebackupsoftwarehasalocalagentorservice,usetheProcessActivityViewertomonitorPagefaults/sec(sortdescending)toconfirm.Ifthereisnolocalagent,itcanbemoredifficulttodeterminethesourceoftheactivity,howeverthebestplacetostartistypicallytheSessionslistunderWindowsTargetManagement.
SQLServer--WindowshardfaultsarenotcausedbySQLServeritselfsinceitmanagesitsownmemoryandmemory/diskaccess.HeavyWindowspagingcanimpactSQLServerperformancebycontendingwithnormalSQLServerdiskactivity.TheonlyscenariowhereSQLServermaycontributetohardfaultsiswhenitsprocessmemory(workingset)isbeingpagedtodiskbytheoperatingsystem.ThiscanhappenwithseverememorypressurewhenSQLServerdoesn'trespondquicklyenoughbyreleasingitsownmemory.Thiscanhaveadramaticimpactonperformance,particularlyon64-bitsystemswherearestartofSQLServermayberequiredtorecover.
SSAS--WindowspagingwilloftenstronglycorrelatewithSSASfileIOactivity.SinceSSASdatabasesconsistofmanyfilesonthedisksystemandSSASdoesn'tmanageitsownmemory/diskaccessasdoesSQLServer,readsfromandwritestotheSSASfileswillshowupashardpagefaults.
S,H
NetworkactivitySSAS:FileIOactivity
SystemMemory Writefaults Avgpages/sec
PageswrittenfrommemorytodiskbyWindows.Ifyouseehighwritefaultsincombinationwithanincreaseinpagefileusage,itmaymeanthattheSQLServerorSSASprocessisbeingpagedtodisk.ForSQLServer,thiscanbeconfirmedbyqueryingthesys.dm_os_ring_buffersDMVforRESOURCE_MEMPHYSICAL_LOWeventswithMemoryUsage<100.
See"Pagefileusage"and"Hardreadfaults"formoredetails.
S,H
SystemMemory Pagefileusage %
Thepercentageofpage(orswap)filecurrentlyinuse.Windowsusesthepagefiletostorepagesofmemoryusedbyprocessesthatarenotcontainedinotherfiles.Ifthefileisadequatelysizedandusage%ishigh,itisalikelyindicatorofmemorypressure.
SQLServer--IfSQLServerdoesn'trespondquicklyenoughtoalowphysicalmemorycondition,memoryfortheSQLServerprocess(workingset)canbeswappedtothepagefile.Thiscanhaveadramaticimpactonperformance,particularlyon64-bitsystemswherearestartofSQLServermayberequiredtorecover.NotethatifAWEorthe"Lockpagesinmemory"optionisinuse,WindowscannotsendSQLServerprocessmemorytothepagefile.Thisoptionisrecommendedon64-bitsystems.
SSAS--SSASdoesn'tacknowledgeorrespondtoWindowslowmemoryconditions,soit'smorelikelythatitsprocessmemorycanbesenttothepagefilewhenthereismemorypressure.SSASperformancecansufferwhenthishappens.
S
DiskIO Readlatencybyphysicaldisk Avgms/Read
Theaveragetimeinmillisecondseachphysicaldiskreadistaking.Logicaldisksonthesamephysicaldisksaregroupedtogether,sincetheysharethesamesetofdiskspindlesandlatencybetweenthemwillalwaysbethesame.
DisklatencyistheonlydiskmeasurementforwhichtherearegenerallyacceptedrangesthatrepresentgoodandbadperformancefromaSQLServerperspective.Diskqueuemetrics,forexample,arenotaccurateformanySANsystems,andtherearealsonouniversallyagreedupongoodandbadrangesforSQLServer.Thefollowingrangescanbeusedasageneralguidelinetodeterminewhetherdisklatencyisacceptable:
Lessthan10ms-Fast*Between10ms-20ms-AcceptableBetween20ms-50ms-SlowGreaterthan50ms-Critical
*Fortransactionlogwrites,between0msand2msisdesirable.
NOTE:TheDiskActivitytabshowsyoutheactuallayoutofcontrollers,disks,anddatabasefiles,anddetailedlatency/volumemetricsforeach.WhereastheDashboardgivesyouataglanceandhistoricaltrendinginformationforlatency,theDiskActivitytabshouldbeusedformoreindepthtroubleshootingofhighlatencyissues.
S,H
DiskIO Writelatencybyphysicaldisk Avgms/Write Theaveragetimeinmillisecondseachphysicaldiskwriteistaking.See"DiskIO:Readlatency"abovefordetails. S,H
*MetricwillONLYbevisiblefortargetsthatareHyper-VHosts**MetricwillONLYbevisiblefortargetsthatareVMguestswhosehostisalsowatched
SQLSERVERMETRICS
Section PerformanceMetric Type Description ModesS=SampleH=History
WarningRange
CriticalRange
Maycorrelatewith
SQLServerActivity UserConnections Lastvalue ThetotalnumberofconnectionsestablishedtotheSQLServer.Detailsforeachconnectioncanbeviewedbyqueryingthesys.dm_exec_connectionsDMV. S
SQLServerActivity BlockedProcesses LastvalueThetotalnumberofblockedprocessesdetectedontheSQLServer.TheDashboardisdesignedtogiveyou"ataglance"informationaboutthenumberofblockedprocesses.TheBlockingSQLtabshouldbeusedforindepthtroubleshootingofanyblockingissues.
S
SQLServerActivity Batches Avg/sec
Thetotalnumberofselect,insertordeletestatementspersecond,includingthoseinsideastoredprocedure.Thenameissomewhatmisleadingsinceitdoesn'trepresentbatches(groupsofmultiplestatements)inthetraditionalsense.ItisoneofthebestmeasuresofoverallactivityonaSQLServer.
Over1000persecondisgenerallyconsideredmoderatetohighactivity.A100Mbnetworkcanreachsaturationataround3000persecond.
Ifhigh,useQuickTracetodeterminewhichapplications,hosts,etc.areresponsible.
S,H
SQLServerActivity Transactions Avg/sec
Thetotalnumberoftransactionspersecondacrossalldatabasesontheserver.Atransactioncanbeeitherauser-definedstatementblocksurroundedbyaBEGINTRANandENDTRAN,oranindividualDMLstatement(insert,updateordelete).
Comparewithbatchespersecond.OnsystemswithhighDMLyoutypicallywanttoseealowratiooftransactionstobatches.Alowratioindicatesthattheindividualstatementsarebeingbundledtogether,andcanresultindramaticallyhigherthroughputandreducedIOduetologflushes.
TransactionspersecondcanbehigheronSQLServer2005and2008duetoincreasedsystemprocessactivity.
Ifhigh,useQuickTracetodeterminewhichapplications,hosts,etc.areresponsible.
S,H
Thetotalnumberofinitialcompilesandrecompilespersecond.Thevalueshouldgenerallybe<10%ofbatchesper
SentryOne User Guide | 190
SQLServerActivity Compiles Avg/sec
second.Highervaluesindicateplanreuseislow,andwillgenerallycorrelatewithhighCPU,sinceplancompilationisaCPU-intensiveoperation.Itmayalsocorrelatewithlowcachehitratiosforobjectand/orSQLplans(see"Plancachehitratios"below).
Itcanalsobeastrongindicatorofmemorypressure,sincetheremaynotbeenoughroomtokeepallplansincache.
Ifyouseeconsistentlyhighcompiles,runQuickTraceandsortresultsby"Cachemisses/sec",thenexpanddetailstoviewtheactualqueriesorprocedurecallsthatarecausingthemisses,whichwillbehighlighted.
Alsosee:http://technet.microsoft.com/en-us/library/cc966425.aspxhttp://technet.microsoft.com/en-us/library/cc293623.aspx
S,H HighCPULowcachehitratios
SQLServerActivity Recompiles Avg/sec Thenumberofrecompilespersecond.Thevalueshouldgenerallybe<10%ofinitialcompilespersecond.Alsosee"Compiles"above. S,H
SQLServerActivity Keylookups Avg/sec
Thenumberoftimespersecondthatthequeryprocessorhadtoperformakeylookup,acrossallqueries.Lookupsoccurwhentheindexbeingusedisnon-covering,meaningitdoesn'tincludeallofthecolumnsrequiredbythequery.Foreachrowreturnedbytheindexoperation,thequeryprocessorhastogobacktoeithertheclusteredindextoperformakeylookup,orthebasetabletoperformaRIDlookupinthecaseofaheap.Lookupsareahighoverheadoperation,especiallywhenlargenumberofrowsareinvolved,sinceeachlookupincursarandomI/Oandadditionalprocessing.ThisoftencorrelateswithhigherCPUusageandpagereads.Lookupscanbeeliminatedbyusingacoveringindex,adjustingjoinstoreducethesetsothelookupisn'tneeded,orusingmultipleindexes(intersection).
Alsosee:http://blogs.msdn.com/b/craigfr/archive/2006/06/30/652639.aspxhttp://sqlskills.com/BLOGS/KIMBERLY/category/The-Tipping-Point.aspx
S,H
CPUUsage:UsertimePageReads
SQLServerActivity Forwardedrecords Avg/sec
Thenumberoftimespersecondthatthequeryprocessorhadtolookupforwardedrecords,acrossallqueries.Forwardedrecordsoccurintableswithnoclusteredindex(heaps)whenrowsbecometoolargetofitonthepageandhavetoberelocated.OvertimethiscancauseseverefragmentationandqueriestoincurmuchhigherthannormalI/Os,specificallyrandomreads.ThiscancorrelatewithhighSQLServerpagereads,andhighSQLServerdiskwaittime,datafileandphysicaldisklatencyifthedisksystemisn'tkeepingupwiththeadditionalreads.Notethatonmanysystemsit'snotunusualforthiscountertostayatzeroifalltableshaveaclusteredindex,anyheapsaren'tfragmented,ortheyjustaren'taccessedfrequently.
Alsosee:http://blogs.msdn.com/b/mssqlisv/archive/2006/12/01/knowing-about-forwarded-records-can-help-diagnose-hard-to-find-performance-issues.aspxhttp://sqlskills.com/BLOGS/PAUL/post/Forwarding-and-forwarded-records-and-the-back-pointer-size.aspxhttp://sqlblog.com/blogs/kalen_delaney/archive/2008/05/25/whats-worse-than-a-table-scan.aspx
S,H
SQLServerMemory:ReadpagesSQLServerWaitsbyCategory:DiskDiskIO/DatabaseIO:ms/Read
SQLServerActivity BackupMB/sec MB/sec ThedatarateinMB/secforanybackupoperationstakingplaceontheserver. S,H
SQLServerActivity SendQueue/RedoQueue MB
TheSendQueueandRedoQueueareapplicableforserversinvolvedinadatabaseMirroringSession.
TheSendQueuerepresentsunsentlogwhichhasaccumulatedonthelogdiskoftheprincipaldatabase.TheRedoQueueisthelogwaitingonthemirror'sdisk.Seealso:MSDNDatabaseMirroringSessions
S,H
SQLServerWaits CPU%ofTotalWaits %CPU%ofTotalWaitsrepresentsthepercentageofallwaitswhichareSignalWaits.SignalwaittimeisthetimeathreadhasspentwaitingontheCPUafterbeingsignaledthatitsresourceisavailable.Ahigh'CPU%ofTotalWaits'percentagemayindicateCPUpressure.
S
HighCPU
SQLServerWaits WaitTime:byCategory Avgms/sec
Theaveragewaittime(inmilliseconds)persecondforallprocessesontheserver,brokendownbymajorphysicalresourcecategory(Network,CPU,Memory,Disk).Althoughtherearehundredsofwaittypes,onlytherelativelyfewwaittypesthatcandefinitivelybeattributedtooneofthephysicalresourcecategoriesareincludedinthecalculationsforthischart.The"Other"categoryisforafewotherimportantwaittypesthatcaneitheraffectperformanceinmorethanonemajorcategory,orcannotbedirectlyattributedtoanycategorywithabsolutecertainty,suchasbackupsandparallelismrespectively.
Waitsbycategoryisoneofthemostimportantchartsonthedashboard,sinceitprovidesaninstantprofileoftheSQLServerandwhereitisspendingthemosttimewaitingforphysicalresources.Itcanbearguedthatifwaitsbycategoryareconsistentlylow,thenwhattheotherdashboardchartsareshowingislessimportant.Forexample,ifCPUandbatcheslookunusuallyhigh,butCPUwaitsarelow,thentheserverhardwareiseffectivelyhandlingtheload.
Generallyspeaking,totalwaitsoflessthan200msisverygood.Between200msand1000msisaverage.Greaterthan1000mslikelyrequiressomeattentiontodeterminewherethebottlenecklies.Over5000msmayindicateseverebottlenecking.
Bearinmindthatthetotalwaittimemaybehigherbyvirtueofalargenumberofprocesses(spids)activeontheserver,sincewaittimeissummedacrossallprocesses,itisnotaperprocessaverage.ThiscanbeespeciallyapplicabletotheOthercategory,sinceseveralprocessesexperiencingparallelismatthesametimecancauseittospiketoveryhighlevels.
Toviewthespecificwaitclassesinvolvedforaparticularinterval,selecttheintervalbyclickingonthechart,thenclicktheSamplebuttononthetoolbar.
Ifyouhoveroveracategory,thedetailedwaittypesforthattimesampleareshowninatooltip.Youcanalsoseethespecificwaittypesforarangebyrunningthe"SQLServerWaitStatsAnalysis"reportfromtheReports->PerformanceAnalysismenu.
Seealso:http://msdn.microsoft.com/en-us/library/cc966413.aspxhttp://www.sqlskills.com/BLOGS/PAUL/post/Wait-statistics-or-please-tell-me-where-it-hurts.aspx
H
SQLServerWaits WaitTime:byClass Avgms/sec
Theaveragewaittime(inmilliseconds)persecondforallprocessesontheserver,brokendownbywaitclass.Thereareapproximately30differentwaitclasses,andeachrepresentsaparticularSQLServerfunctionalareaortypeofactivity.Meaninglessorinnocuouswaittypessuchastimerandqueuewaitsarepre-filteredfromview.EachclassisfurtherbrokendownintoresourceandCPUwaits.
S
SentryOne User Guide | 191
Ifyouhoveroveraclasscolumn,thedetailedwaittypesareshowninatooltip.
Seealso:http://answers.sqlsentry.com/questions/9/how-can-i-enable-hidden-wait-types-in-performance.html
SQLServerMemory Buffercachesize MB Thecurrentsizeofthebuffercache,inMB.Youwantthistobeaslargeaspossibleformaximumperformance,andonadedicatedSQLServeritshouldconsumemostoftheSQLServermemoryandphysicalmemory. S,H
SQLServerMemory Plancachesize(SQL) MB
Thecurrentsizeofthecacheusedforqueryplans,inMB.Thisincludesadhoc,autoparameterized,andpreparedplans.Ahighvalueinproportiontothebuffercachemayindicatequeryplansaren'tbeingeffectivelyreused.
Seealso:http://technet.microsoft.com/en-us/library/cc293623.aspx
S,H
SQLServerMemory Plancachesize(Objects) MB
Thecurrentsizeofthecacheusedforobjectplans,inMB.Thisincludesstoredprocedures,functions,andtriggers.Ahighvalueinproportiontothebuffercachemayindicatequeryplansaren'tbeingeffectivelyreused.
Seealso:http://technet.microsoft.com/en-us/library/cc293623.aspx
S,H
SQLServerMemory Othercachesize MBThecurrentsizeofthecacheusedforallotherplans,inMB.Thisincludesboundtrees,extendedstoredprocedures,temporarytables,andtablevariables.Thiscachesizeshouldbelowinproportiontotheotherplancaches.Ifitgoesoverroughly10%oftheobjectorSQLplansize,furtherinvestigationmaybeneeded.
S,H
SQLServerMemory Plancachehitratio(SQL) % Theratioofhitstolookupsforthequeryplancache.Thisvalueshouldstayabove90%. S,H
SQLServerMemory Plancachehitratio(Objects) % Theratioofhitstolookupsfortheobjectplancache.Thisvalueshouldstayabove90%. S,H
SQLServerMemory Pagereads Avg/sec
Theaveragenumberofbufferdatapagesreadfromdiskpersecond.Ideallythisvalueshouldbeatornear0mostofthetime.Ifitisabove0,itmeansthatthedatawasn'tfoundinthebuffercache,andsoithadtoberetrievedfromdisk.Ifspikesinpagereadscorrelatewithhighdisklatency,thedisksystemmaynotbekeepingup.
Notethatqueryingnewlycreatedtemptableswillalsoshowupaspagereads,aswellasactivityfrominternaltempdbobjects.Thisincludeshashjoins,hashaggregates,sortandqueryspooloperations.Thismeansthatyoucanstillseehighpagingfromtempdbduetoqueryactivity,eventhoughyouaren'texplicitlyusingtemptables.
Whenpagereadsandpagewritescorrelateclosely,it'sastrongindicatorthatit'srelatedtotempdbactivity,sincepagesarebeingwrittentodiskwhentheobjectsarecreated,thenimmediatelyreadbackintomemoryforusebyqueryingoperations.
Iflazywrites>0andtrackcloselywithpagereads,andpagelifeexpectancy<600,it'sastrongindicatorofmemorypressure,sincedataisbeingmovedoutofbuffertomakeroomfornewdatacomingin.
Notethatlazywritesalsocausepagewrites,butgenerallymuchlessthantempdbactivity.Soifyouseehighpagereads,andrelativelylowlazywritesandpagewrites,it'slikelymemorypressureandnottempdbactivity.
Seealso:http://technet.microsoft.com/en-us/library/cc966545.aspx
S,H
DiskIO/DatabaseIO:ms/Read
SQLServerMemory Pagewrites Avg/sec
Theaveragenumberofbufferdatapageswritestodiskpersecond.
Pagewritescanbecausedbycheckpoints,lazywrites,aswellastempdbactivity.Tocalculatetheapproximateamountofwritesrelatedtotempdb,foranygiveninterval,subtractcheckpointsandlazywritesfromtotalpagewrites.
Ifhighpagewritescorrelatewithhighlatency,thedisksystemmaynotbekeepingup.
See"Pagereads"formoredetails.
S,H
DiskIO/DatabaseIO::ms/WriteLazywritesCheckpointpages
SQLServerMemory Pagelifeexpectancy Lastvalue
Theaveragelifespanofadatapage.Ifthisvalueislessthan600,it'sanalmostcertainindicatorofmemorypressure.Ideallyitshouldbemuchhigherthan600ifamplememoryisavailable.Ingeneral,thelargerthebuffercachesize,thehigheritshouldbe.Thisisthebestuniversalindicatorofmemorypressure.
Seealso:http://www.sqlmag.com/blog/sql-server-questions-answered-28/sql-server/what-does-page-life-expectancy-mean-137153
S
<600
SQLServerMemory Memorygrantspending Lastvalue
Thenumberofprocesseswaitingforaqueryworkspacememorygrants.Ideallythisvalueshouldbe0atalltimes,butitcangoabove0incasesofseverememorypressure.
Whenitdoes,RESOURCE_SEMAPHOREwaitswillalsobe>0,sincethiswaitisameasureofthetimethatquerieshadtowaitformemorygrants.ThistypewillbevisibleintheWaitscharttooltipsfortheMemoryclassandcategory.
S
>0
DatabaseIO Readlatencybydatabasefile Avgms/Read
Theaveragetimeinmillisecondseachphysicaldiskreadistakingforaparticulardatabasefile.Thetop10databasefiles(dataandtransactionlog)withthehighestlatencyforthespecifieddaterangeareshown.Inhistorymode,usethedropdowntodeterminewhethertotaldatabaselatencyoraspecificdatabasefileisshownonthechart.
Seethe"DiskIO:Readlatency"sectionformoredetailsandperformanceranges.
S,H
DatabaseIO Writelatencybydatabasefile Avgms/WriteTheaveragetimeinmillisecondseachphysicaldiskwriteistakingforaparticulardatabasefile.
See"DatabaseIO:Readlatency"and"DiskIO:Readlatency"sectionsaboveformoredetails.S,H
DatabaseIO Checkpointpages Avg/sec
Theaveragepagespersecondwrittentodiskbythecheckpointprocess.CheckpointsflushalldirtybufferpagesforagivendatabasetodiskandareanormalpartofSQLServeroperations.Thefrequencyofcheckpointsandvolumeofcheckpointpagesisdictateddirectlybythe"recoveryinterval"serveroption.SQLServerusescheckpointstobatchwritestodisk,whichisgenerallymoreefficient.However,ifthevolumeofeachcheckpointistoohighandyouseeacorrelationwithhighdisklatency,itmayindicatethatthedisksystemisn'tkeepingup.
Checkpointswillsometimescorrelatewithlowerpagelifeexpectancy,butonlybecausewhenpagesareflushedfrommemoryPLEcandrop,notbecausethereisadirectcorrelationwithmemorypressureandcheckpoints.ItwillalsocorrelatedirectlywithhighSQLServerpagewrites.IfyouseeacorrelationwithhighdisklatencyorhighSQLServerdiskwaits,thenthedisksystemmaynotbekeepingupwiththecheckpointvolume.Byloweringtherecoveryintervalyoucanincreasethefrequencyandatthesametimelowerthevolumeofeachcheckpoint,whichmaylessentheoverallimpactondiskwaits.Everysystemisdifferentinthisregard,however,sotestingofdifferentrecoveryintervalsshouldbeperformedandtheimpactobserved.
Thiscountermay,butdoesnotalways,correlatewithlazywrites,sinceitdependsmoreontheactivityprofileoftheserver,evenundermemorypressure.Ifcheckpointsarehappeningoftenenoughtomeetthespecifiedrecoveryinterval,theremaynotbemuchworkforthelazywriterthreadstodowhentheywakeup.
Ontheflipside,ifthelazywriterthreadsarestayingcontinuallybusy,andthenumberofdirtypagesislowenoughtomeettherecoveryinterval,thecheckpointprocessmaynoteverhavemuch,ifany,worktodo.
OnSQLServer2008,youcanusethe-kstartupparametertocontrolthemaxMBpersecondthatcanbewrittenbythecheckpointprocess,intheeventthatthecheckpointprocessisoverwhelmingthedisksystem.Thisisnotatypicalscenario,however,sothisoptionshouldbetestedcarefullybeforeuse,andotherpossiblesolutionsshouldbeinvestigatedfirst.
Ifwritelatencyexceeds20ms,thecheckpointprocesswillbeautomaticallythrottledtoavoidoverloadingthedisk.Thiscanhappenevenwhenthediskiscapableofeasilysustaininghigherthroughput,andcanleadtoabnormallylongcheckpoints,andblockingofthelogwriterprocess.
DBCCTRACEON(3502,3504,-1);willlogmanyadditionaldetailsaboutthecheckpointprocesstotheSQLServererrorlog,andcanbeveryhelpfulfortroubleshootingcheckpointrelatedissues.
Seealso:http://technet.microsoft.com/en-us/library/cc917726.aspx
S,H
DiskIO/DatabaseIO:ms/WriteLazywrites
DatabaseIO Lazywrites Avg/sec
Theaveragenumberofwritespersecondbythelazywriter.Thelazywriterperiodicallyscansthebufferandevictspagesthathavelowusecountsinordertomaintainacertainnumberofpagesonthefreelist.Ideallythisvalueshouldbeatornear0mostofthetime.Whenthereisnomemorypressure,thelazywriterwillgenerallyleavedatapagesinmemory,eventhosewithlowusecounts.However,whenpressureexists,thelazywriterwillcontinuallybeworkingtomakeroomfornewdatacomingintothebuffer.
Acertainindicatorofmemorypressureisongoinglazywrites>0withpagereads/writes>0andpagelifeexpectancy<600.
S,H
>20 PagelifeexpectancyPagereads/writes
SentryOne User Guide | 192
Alsosee"Checkpointpages"above.
DatabaseIO Logflushes Avg/sec
LogflushesoccurwitheveryDMLoperation,andareanormalpartofSQLServeractivity.It'simportanttonotethatlogwritestophysicaldiskfromupdatestobufferpageshappenimmediatelyupontransactioncommit,whereaswritestophysicaldiskfromthechangedbufferpagesisdelayeduntilthenextcheckpointoccurs.Assuch,itiscriticalthatthephysicaldisksystemwherethetransactionlogresidesisfastenoughtokeepupwithactivity.Ifnot,itcanslowdownallDMLoperationsoccurringinthedatabase.
Ideallyeachbusytransactionlogshouldhaveitsowndedicateddisks,sothatwritescanhappensequentially,whichwillminimizelatency.Iflogflushesarehighandlatencyishighforatransactionlogfile,thenthedisksystemislikelyunderpoweredforthecurrentload.
S,H
HYPER-VHOSTMETRICS
Section PerformanceMetric Type Description ModesS=SampleH=History
WarningRange
CriticalRange
Maycorrelatewith
Network(VM) UtilizationbyVirtualMachineGuest Mbps Thedatatransferrateinmegabitspersecondforeachguest,enablingyoutoseehowmuchofthenetworktrafficisrelatedtoeachindividualguestmachine. S,H
CPUUsage(VM) UsagetimebyGuest % Theusagetime%foreachindividualguestmachine.RepresentedbythecolorselectedforeachindividualVirtualMachineguest(consistentoverthedashboardsection). S,H
CPUUsage(VM) vCPURootusagetime %Theusage%timefortheHypervisorrootvirtualprocessor.SeeAlso:https://msdn.microsoft.com/en-us/library/cc768535(v=bts.10).aspx
S,H
CPUUsage(VM) %GuestRuntime %FortheHyper-VHypervisorLogicalProcessor,theaveragepercentageoftimeguestcodeisrunningonanLogicalProcessor.SeeAlso:https://blogs.technet.microsoft.com/chrisavis/2013/03/25/performance-management-monitoring-cpu-resources/
S,H
CPUUsage(VM) vCPUWaitTime% The%timetheguestvirtualmachinespentwaitingforaHostkernelresource.
SeeAlso:https://www.sqlskills.com/blogs/jonathan/hyper-v-equivalent-to-vmware-cpu-ready-time/S,H
SystemMemory(VM) MemorybyVirtualMachineGuest MB Theamountofphysicalmemoryusedbyeachguestonthehostmachine. S,H
DiskIO(VM) IOPS(Read) Reads/sec ThenumberofreadoperationspersecondacrossallVirtualMachinesbelongingtotheHost.InSamplemodereadoperationsarebrokendownbyindividualVirtualMachine.Usethedrop-downtoselectanindividualguestmachine. S,H
DiskIO(VM) IOPS(Write) Writes/sec
ThenumberofwriteoperationspersecondacrossallVirtualMachinesbelongingtotheHost.InSamplemodewriteoperationsarebrokendownbyindividualVirtualMachine.Usethedrop-downtoselectanindividualguestmachine.
S,H
DiskIO(VM) ReadThroughput MB/sec TheaverageMBpersecondreadacrossallVirtualMachinesbelongingtotheHost.Usethedrop-downtoselectanindividualguestmachine. S,H
DiskIO(VM) WriteThroughput MB/sec TheaverageMBpersecondwrittenacrossallVirtualMachinesbelongingtotheHost.Usethedrop-downtoselectanindividualguestmachine. S,H
AZURESQLDATABASEMETRICS
Section PerformanceMetric Type Description ModesS=SampleH=History
Maycorrelatewith
DTUUsage TotalDTU% %
ADTUrepresentsthepowerofthedatabaseengineasablendedmeasureofCPU,memory,andreadandwriterates.ThismeasurehelpsyouassesstherelativepoweroftheSQLDatabaseperformancelevels.EachServiceTier,whichsetspricingandusagelimitsforanAzureSQLDatabase,expressestheamountofresourcelimitsasanumberofDTUs.ThemoreDTUsanAzureSQLDatabaseisallocatedthemoreresourcesthedatabasewillhavetoservicetheworkload.
IfyourdatabaseisseeinghighTotalDTU%usageitmaybenefitfromadjustingtothenexthighestServiceTiertoimproveperformance.LikewiseifyouareconsistentlyseeingverylowTotalDTU%usageyoumaysavesomemoneybyscalingdowntothenextlowerServiceTier.
FormoreinformationregardingDTUsreadthedocumentationonAzure.com.ForvariableperformingworkloadsandsharingresourcesacrossmultipleAzureSQLDatabasesalsoseeElasticDatabasePools.
S,H
DTUUsage CPU % ThismetricistheaverageCPUpercentagebasedonthelimitoftheservicetier.ThisisoneofthemetricsthatmakesupDTU. S,H
DTUUsage DataIO % ThismetricistheaverageDataI/Opercentagebasedonthelimitoftheservicetier.ThisisoneofthemetricsthatmakesupDTU S,H
DTUUsage LogIO % ThismetricistheaveragelogI/Opercentagebasedonthelimitoftheservicetier.ThisisoneofthemetricsthatmakesupDTU. S,H
MemoryUsage AllocatedMemoryUsage %
EachServiceTierhasamaximumamountofmemoryallowedfortheAzureSQLDatabasetouse.Thismetricprovidesthepercentageoftheallowedmemorybeingusedforthedatabase.
Itwillbeverycommonforthismetrictobehigh.Ifmuchofthedatayourapplicationsneedisinmemoryitmeansbetterperformancesincethedatabasewillnothavetoreadfromthephysicaldisktoreturnthedata.
S,H
DatabaseSize SizeinGB %,GB
EachservicetierhasamaximumsizeallowedfortheAzureSQLDatabase.ThismetricprovidesthesizeoftheDatabase,notincludingthetransactionlog.
Ifyouareapproachingthemaximumsizeallowedyoumayneedtoincreaseyourservicetiersizeorlooktoscaleoutyourdatabaseusingshardingtechniques.
FormoreinformationaboutshardingwithAzureSQLDatabaselookattheElasticDatabasetools.
S,H
SQLServerActivity UserConnections Lastvalue ThetotalnumberofconnectionsestablishedtotheAzureSQLDatabase.Detailsforeachconnectioncanbeviewedbyqueryingthesys.dm_exec_connectionsDMV. S
SQLServerActivity BlockedProcesses Lastvalue ThetotalnumberofblockedprocessesdetectedontheAzureSQLDatabase.TheDashboardisdesignedtogiveyou"ataglance"informationaboutthenumberofblockedprocesses. S,H
SQLServerActivity Transactions Avg/sec TheaveragenumberoftransactionspersecondfortheAzureSQLDatabase.Atransactioncanbeeitherauser-definedstatementblocksurroundedbyaBEGINTRANandENDTRAN,oranindividualDMLstatement(insert,updateordelete). S,H
SQLServerActivity BackupMB/sec MB/sec
ThedatarateinMB/secforanybackupoperationstakingplaceontheserver.
InAzureSQLDatabasetheplatformcreatesbackupsautomaticallyforyou.Whileyoudonothavedirectcontroloverthebackuptimes,thisdoesallowyoutohelpdetermineifbackupsarenegativelyaffectingyourperformance.
S,H
SQLServerWaits CPU%ofTotalWaits % CPU%ofTotalWaitsrepresentsthepercentageofallwaitswhichareSignalWaits.SignalwaittimeisthetimeathreadhasspentwaitingontheCPUafterbeingsignaledthatitsresourceisavailable.Ahigh'CPU%ofTotalWaits'percentagemayindicateCPUpressure. S HighCPU
SQLServerWaits WaitTime:byCategory Avgms/sec
Theaveragewaittime(inmilliseconds)persecondforallprocessesonthedatabase,brokendownbymajorphysicalresourcecategory(CPU,Memory,etc.).Althoughtherearehundredsofwaittypes,onlytherelativelyfewwaittypesthatcandefinitivelybeattributedtooneofthephysicalresourcecategoriesareincludedinthecalculationsforthischart.The"Other"categoryisforafewotherimportantwaittypesthatcaneitheraffectperformanceinmorethanonemajorcategory,orcannotbedirectlyattributedtoanycategorywithabsolutecertainty,suchasbackupsandparallelismrespectively.
Waitsbycategoryisoneofthemostimportantchartsonthedashboard,sinceitprovidesaninstantprofileoftheSQLDatabaseandwhereitisspendingthemosttimewaitingforphysicalresources.Itcanbearguedthatifwaitsbycategoryareconsistentlylow,thenwhattheotherdashboardchartsareshowingislessimportant.
Toviewthespecificwaitclassesinvolvedforaparticularinterval,selecttheintervalbyclickingonthechart,thenclicktheSamplebuttononthetoolbar.
Ifyouhoveroveracategory,thedetailedwaittypesforthattimesampleareshowninatooltip.
Seealso:http://msdn.microsoft.com/en-us/library/cc966413.aspxhttp://www.sqlskills.com/BLOGS/PAUL/post/Wait-statistics-or-please-tell-me-where-it-hurts.aspx
H
SQLServerWaits WaitTime:byClass Avgms/sec
Theaveragewaittime(inmilliseconds)persecondforallprocessesontheserver,brokendownbywaitclass.Thereareapproximately30differentwaitclasses,andeachrepresentsaparticularSQLServerfunctionalareaortypeofactivity.Meaninglessorinnocuouswaittypessuchastimerandqueuewaitsarepre-filteredfromview.EachclassisfurtherbrokendownintoresourceandCPUwaits.
Ifyouhoveroveraclasscolumn,thedetailedwaittypesareshowninatooltip.S
SentryOne User Guide | 193
Seealso:http://answers.sqlsentry.com/questions/9/how-can-i-enable-hidden-wait-types-in-performance.html
SQLServerMemory BufferCacheSize MB Thecurrentsizeofthebuffercache,inMB.Youwantthistobeaslargeaspossibleformaximumperformance. S,H
SQLServerMemory PageLifeExpectency Lastvalue
Theaveragelifespanofadatapage.Ifthisvalueislessthan600,itisanalmostcertainindicatorofmemorypressure.Ideallyitshouldbemuchhigherthan600ifamplememoryisavailable.Ingeneral,thelargerthebuffercachesize,thehigheritshouldbe.Thisisthebestuniversalindicatorofmemorypressure.
AzureSQLDatabaseisamulti-tenantenvironmentandthismetricrepresentsmorethanjustyourdatabase.Usethismetricmoreasanindicatorofoverallmemorypressureandtrends.
S
DatabaseIO ReadLatencybyDatabaseFile Avgms/ReadTheaveragetimeinmillisecondseachphysicaldiskreadistakingforaparticulardatabasefile.ForAzureSQLDatabasetheloganddatafileareshown.
TheloganddatafilesinAzureSQLDatabasearehandledforyouaspartofthePlatformasaServiceoffering.S,H
DatabaseIO WriteLatencybyDatabaseFile Avgms/WriteTheaveragetimeinmillisecondseachphysicaldiskwriteistakingforaparticulardatabasefile.
TheloganddatafilesinAzureSQLDatabasearehandledforyouaspartofthePlatformasaServiceoffering.S,H
DatabaseIO LogFlushes Avg/sec
LogflushesoccurwitheveryDMLoperation,andareanormalpartofSQLServeractivity.It'simportanttonotethatlogwritestophysicaldiskfromupdatestobufferpageshappenimmediatelyupontransactioncommit,whereaswritestophysicaldiskfromthechangedbufferpagesisdelayeduntilthenextcheckpointoccurs.Assuch,itiscriticalthatthephysicaldisksystemwherethetransactionlogresidesisfastenoughtokeepupwithactivity.Ifnot,itcanslowdownallDMLoperationsoccurringinthedatabase.
S,H
VMWAREHOSTMETRICS
Section PerformanceMetric Type Description ModesS=SampleH=History
Maycorrelatewith
CPU Ready % Percentageoftimethatthevirtualmachinewasready,butcouldnotgetscheduledtorunonthephysicalCPU.CPUreadytimeisdependentonthenumberofvirtualmachinesonthehostandtheirCPUloads. S,H
Memory Active MB Amountofmemorythatisactivelyused,asestimatedbyVMkernelbasedonrecentlytouchedmemorypages. S,H
Memory Consumed MB Amountofmachinememoryusedonthehost.ConsumedmemoryincludesIncludesmemoryusedbytheServiceConsole,theVMkernel,vSphereservices,plusthetotalconsumedmetricsforallrunningvirtualmachines. S,H
Memory Overhead MB Totalofalloverheadmetrics(includingVMoverheadandVMKerneloverhead)forpowered-onvirtualmachines,plustheoverheadofrunningvSphereservicesonthehost. S,H
Memory Granted MB Amountofmachinememoryor“physical”memorythatismappedforthehost. S,H
9.2 Processes
TheProcessestabisavailableaspartofPerformanceAnalysisforWindows.
Bydefault,PerformanceAnalysisforWindowscollectsinformationaboutwell-knownor"categorized"processes.Thereareseveralofthesepredefinedwell-knownprocessgroups,includinggroupsforSQLServer,IIS,SSAS,SSIS,andSSRS.Ifyouwouldliketocollectinformationaboutprocesseswhicharenotinthesedefaultgroups,youhaveacoupleofdifferentoptionsfordoingso:
Addyourownwell-knowngroupsandspecifywhichprocessesbelongtothem.ConfigureanUncategorizedProcessFilter,whichallowsforthecollectionofuncategorizedprocesses
Youmayalsochoosetodobothintandem.Forinstance,youmaywishtodefineseveralnewwell-knownprocessgroupswhicharepertinenttothemonitoredcomputer'sworkload,sothatinformationaboutthoseprocesseswillalwaysbecollected.YoumayalsowishtodefineanUncategorizedProcessFilter,sothatinformationaboutprocesseswhichareconsumingalargeamountofresourcesonthecomputerisalsocollected.
Jumpto:
Addingnewgroupsofwell-knownprocesses
ConfigureanUncategorizedProcessFilter
PROCESSESTABDISPLAYTheProcessestabcontainsagridviewofalltheprocessesaboutwhichyouarecollectinginformation.Processesareintelligentlygroupedbyprogramandfunction,includinggroupsforSSRS,SSIS,andSQLServer(well-knownprocessgroups).Metricsaredisplayedforeachprocess,givingyouinsightintotheresourceusageforboththeindividualprocessesandtheirassociatedgroups.
OPTIONSShowingroups-Thisoptiongroupswell-knownprocessesbytheirassignedgrouporcategory.Showing/HidingGroups-Youcanhidecertaingroupsfromviewusingthegroupdrop-downlistbox.Uncheckanygroupthatyouwishtohide.Showwell-knownprocessesonly-Thisoptionwillhideanyprocesseswhicharenotpartofawell-knowngroup.AdditionalColumns-Additionalcolumnsareavailable,andcanbeaccessedbyright-clickingonany
SentryOne User Guide | 194
columnheaderandselectingtheColumnChooseroption.SortingColumns-Youmaysortthegridviewbyspecificcolumnsbyselectinganycolumnheader.Additionalsortingoptionsareavailablefromthecontextmenuofanycolumnheader.
ADDINGNEWGROUPSOFWELL-KNOWNPROCESSESBydefault,thereareseveralwell-knownprocesseswhicharelogicallygroupedbyprogram/function,includingpredefinedgroupsforSQLServer,IIS,SSAS,SSIS,andSSRS.YoucanaddadditionalgroupsofyourownusingthefollowingSentryOneDatabasetables:
PerformanceAnalysisDeviceProcessGroup
PerformanceAnalysisDeviceProcessGroupMapping
PerformanceAnalysisDeviceProcessGroup
UsethistabletodefinegroupsyourWell-Knownprocesses.
ColumnName Description
ID Identitycolumn
ProcessGroupName ThisisthegroupnamewhichwillbedisplayedintheProcessestab.
ProcessGroupNameFull ThefullnameisnotdisplayedintheProcessestab.
ProcessGroupDescription ThedescriptionoftheProcessgroup.
PerformanceAnalysisDeviceProcessGroupMapping
UsethistabletomapspecificprocessestothegroupsyoudefinedinthePerformanceAnalysisDeviceProcessGrouptable.
ColumnName Description
ID Identitycolumn
PerformanceAnalysisDeviceProcessGroupID TheIDofthegroupyouwouldlikethisprocesstomapto.ShouldmaptotheIDcolumnofagroupfoundinthePerformanceAnalysisDeviceProcessGrouptable.
ProcessName Entertheexactnameunderwhichtheprocessisexecuted,includingtheexecutableextension.Forexample:'services.exe'
ServiceName EnterthenameoftheserviceexactlyasitisdisplayedontheGeneralpropertiestaboftheserviceasshownfromtheservicesapplet.
Tofindtheactualservicename,opentheservicesappletandright-clicktheservice.NextchooseProperties.Usetheexactvaluefoundinthe"Servicename"field.
ShowOnPADashboard SpecifyifthegroupwillbedisplayedonthePerformanceAnalysisDashboard.
CommandLineMatchRegexThiscolumnisusefulwhendifferentiatingprocesseswhichusethesameexecutable,butperformdifferentfunctionsbaseduponthepassedinparameters.Theregexshoulduseavalid.NETcompatibleregularexpressionasdefinedhere.Note,thatthematchoperationiscase-insensitive.
EXAMPLEAsanexample,iftheTargetyouaremonitoringisaMicrosoftExchangeServer,youmaywanttocreateanewgroupofwell-knownprocesseswhichincludesthoserelatedservices.Inthisexamplewewillcreateanewgroupofwell-knownprocessesforMicrosoftExchange,andthenwewilladdthefollowingMicrosoftExchangerelatedservicestothegroup:
MicrosoftExchangeInformationStoreMicrosoftExchangeMailboxAssistantsMicrosoftExchangeTransport
CreatetheGroup
SentryOne User Guide | 195
Insert INTO dbo.PerformanceAnalysisDeviceProcessGroup(ProcessGroupName,ProcessGroupNameFull)VALUES ('Microsoft Exchange','Microsoft Exchange Server 2010')
Insert INTO dbo.PerformanceAnalysisDeviceProcessGroupMapping(PerformanceAnalysisDeviceProcessGroupID,ProcessName,ServiceName,ShowOnPADashboard)VALUES (9,'Store.exe','MSExchangeIS',1),(9,'MSExchangeMailboxAssistants.exe','MSExchangeMailboxAssistants',1),(9,'MSExchangeTransport.exe','MSExchangeTransport',1)
Note:BesurethatthePerformanceAnalysisDeviceProcessGroupIDcorrespondstotheIDcolumnofyourdesiredgroupinthePerformanceAnalysisDeviceProcessGrouptable.
PROCESSCOLLECTIONSETTINGSProcesscollectioniscontrolledwiththeWindowsInstanceSettingsandcanbeaccessedasfollows:
1. SelectthedesiredWindowsInstanceintheNavigatorpane2. OpentheSettingspane(Viewmenu->Settings)3. IntheSettingspanechooseWindowsInstancefromthedrop-downmenu.
YoushouldnowseetheProcessCollectionsettingsintheSettingspane.BydefaultwhenaWindowsInstanceismonitored,processinformationwillbecollectedaboutallwell-knownprocesses.YoumaydisablethecollectionofprocessinformationbychangingtheCollectProcessesSettingtoFalse.Youmayenablethecollectionofadditionalprocesses(nonwell-knownprocesses)byconfiguringanUncategorizedProcessFilter.
CONFIGUREANUNCATEGORIZEDPROCESSFILTERBydefault,PerformanceAnalysisforWindowscollectsinformationabout"Well-Known"or"Categorized"processes.YoumayconfigureSentryOnetoalsocollectinformationaboutUncategorizedprocessesbyspecifyinganUncategorizedProcessFilter.Thisfiltermaybebuiltaroundvariousmetrics,including%CPUtimeorReadandWritebytespersecond.
FollowthedirectionsintheprevioussectiontoaccesstheProcessCollectionSettingsforyourWindowsInstance.Next,selecttheUncategorizedProcessFilterrowandusetheellipsis(...)buttontoopentheFilterEditor.Addrulestothefilterasdesired.TheFilterEditorwasdesignedwithflexibilityinmind,andallowsyoutospecifyanynumberofcriteriaaroundevents.Youcandefineacomplexrulewithmultiplegroupsandlogicaloperators.FormoreinformationaboutusingtheFilterEditorseetheFilterEditortopic.
AddtheProcessesandMapthemtotheGroup
9.3 DiskActivity
Appliesto:SQLSentry,WinSentry,BISentry,andVSentry
DiskbottlenecksrepresentoneofthemostcommonsourcesofperformanceproblemsforWindowsandSQLServer.TheDiskActivitytabprovidesapatentedgraphicaldiskanalysissystemwhichbreaksdowndiskactivityandlatencyatthecontroller,physicaldisk,andfilelevel,highlightingbottlenecksatanypointinadisksystem.
ThetoppaneofthedisplayshowsagraphicalrepresentationoftheentiredisksystemasWindowsseesit.Thebottompanedisplaysactivitymetricsineitherahierarchicaldisksystemformat,ordatabaselistformat.
SentryOne User Guide | 196
DISKACTIVITYMODESTheDiskActivitytabhastwomodes,RealTimeandHistory.Theactivemodeiscontrolledwiththeauto-refreshtoolbarbutton.Whentheauto-refreshPlaybuttonisselected,thetabentersRealTimemode.Dataforthelastcollectedsampleisshown,andmovingsegmentedlinesindicatetheI/Odirection(readorwrite)andlatencyforeachdisk,file,andcontroller.
ThetoppiperepresentsreadactivityThebottompiperepresentswriteactivity
Thethicknessandcolorofthedisplayedsegmentedlineindicatestheamountoflatencybeingexperienced.Aslatencyincreases,thelinesgrowinwidthandchangethroughgreen,olive,orange,andredtogiveaquickvisualindicationofthedecreasedperformance.
Selectinganyfilewilldisplayatooltipwhichshowsthenumericalvaluesforthereadsandwriteshittingaparticularfile.Theamountofoveralllatencybeingexperiencedbythediskisdistinguishedfromtheamountoflatencyforindividualfiles.Theoveralldisklatencyisrepresentedwiththehorizontalpipeconnectingalloftheindividualfiles,whilethesmallverticalpipesrepresentlatencyatthefilelevel.
Thetablebelowliststhecolorofthesegmentedlineandthecorrespondingrangeoflatencyvalues.Alllatencyvaluesarelistedinmilliseconds(ms).
ColorRange ReadLatency WriteLatency
Green <10ms <10ms
Greenish-YellowtoOrangish-Yellow 10-20ms 10-20ms
OrangetoReddish-Orange 21-30ms 21-40ms
Red >30ms >40ms
ReadandWriteLatencycolorgradients
Whentheauto-refreshPausebuttonisselected,thetabgoesintoHistorymode.Aggregatediskmetricsare
SentryOne User Guide | 197
displayedfortheselecteddaterange,andthesolidlinesareusedtoindicatelatency.Historymodeenablesyoutoseehowyourdisksystemwasperformingoveranytimeperiod.
TOOLBARDiskGridView/DatabaseGridView-Whenauto-refreshispaused,theseviewingoptionsareavailable.ShowEmptyDisks-ControlswhetherornotdiskswithoutanySQLServerdatabasefilesaredisplayed.OrderByActivity-Sortphysicaldisksbyactivityindescendingorder.Sum/Average-Whenauto-refreshispaused,theseviewingoptionsareavailable.
CONTEXTMENUSLeftclick-Setsthefocustoanyfile.Otherfilesforthesamedatabasearealsohighlighted,andthecorrespondinggridrow.Rightclick-RunaQuickTraceoraQuickReport.
EXPORTINGANDREPORTINGOPTIONSExportingData-TheDiskActivitygridviewcanbeexportedthroughthefilemenu(File→ExportData).
QuickReport-IfyouneedaccesstodatabaselevelI/Ometricsinareportformat,aquickreportcanberunfromtheright-clickcontextmenuofanyfile.YoumayrunaQuickReportwhileinRealTimemodeforthelast10minutesofdata.
DISKACTIVITYMETRICSThefollowingtablelistsdescriptionsofthemetricsdisplayedontheDiskActivityscreen.FormoreinformationoninterpretinglatencyvaluesbesuretoseeDiskI/O:Readlatencybyphysicaldisk.
Thesamplecollectionfrequencyfordiskcountersis20seconds;whileinRealTimemodetheDiskActivityscreenwillupdateaccordingtothissampleinterval.Acustomsampleintervalcanbespecified.Thismaybeusefulifyouaremonitoringaserverwithalargenumberofdatabasefilesperdatabase,asthiscanleadtoincreasedSentryOnerepositorygrowthandtransactionlogactivity.FormoreinformationaboutadjustingthediskcountercollectionfrequencyseethisKBarticle.
Name Description
VirtualMachine
TheVirtualMachinethatthefileisassociatedwith.
NOTE:ThiscolumnwillonlyappearfortargetsthatarealsoHyper-VHosts,andthecolumnwillonlybepopulatedforfilesdirectlyassociatedwithVirtualMachinesonthehost(e.g.,.vhdxfiles,mounted.isofiles).
ReadBytes
RealTime
Theaveragenumberofbytesreadpersecondoverthelastpollinginterval.
History
AverageMode-Theaveragenumberofbytesreadpersecondovertheselectedrange.
SumMode-Thetotalnumberofbytesreadfortheselectedrange
%ReadBytes
RealTime
ThepercentageofbytesreadfromthisfileinrelationtootherfilesbelongingtotheTarget,overthelastsamplepollinginterval.
History
SentryOne User Guide | 198
AverageMode-Theaveragepercentageofbytesreadfromthisfile,inrelationtootherfilesbelongingtotheTarget,overtheselectedhistoricalrange.
SumMode-n/a
Reads
RealTime
Thenumberofreadoperationspersecond,overthelastsamplepollinginterval.
History
AverageMode-Theaveragenumberofreadoperationspersecondovertheselectedrange.
SumMode-Thetotalnumberreadoperationsoccurringintheselectedrange.
ms/Read
RealTime
Millisecondsperread.Theaveragetimeinmillisecondseachphysicaldiskreadtookoverthelastsamplepollinginterval.
History
AverageMode-Theaveragetimeinmillisecondseachphysicaldiskreadtookovertheselectedtimerange.
SumMode-n/a
WriteBytes
RealTime
TheaveragenumberofBytesWrittenpersecondoverthelastpollingsampleinterval.
History
AverageMode-Theaveragenumberofbyteswrittenpersecondovertheselectedrange.
SumMode-Thetotalnumberofbyteswrittenfortheselectedrange
%WriteBytes
RealTime
ThepercentageofbyteswrittentothisfileinrelationtootherfilesbelongingtotheTarget,overthelastsamplepollinginterval.
History
AverageMode-Theaveragepercentageofbyteswrittentothisfile,inrelationtootherfilesbelongingtotheTarget,overtheselectedhistoricalrange.
SumMode-n/a
Writes
RealTime
Thenumberofwriteoperationspersecond,overthelastsamplepollinginterval.
History
AverageMode-Theaveragenumberofwriteoperationspersecondovertheselectedrange.
SumMode-Thetotalnumberwriteoperationsoccurringintheselectedrange.
RealTime
Millisecondsperwrite.Theaveragetimeinmillisecondseachphysicalwritetookoverthelastsamplepollinginterval.
Name Description
SentryOne User Guide | 199
ms/Write History
AverageMode-Theaveragetimeinmillisecondseachphysicaldiskwritetookovertheselectedtimerange.
SumMode-n/a
OtherReadBytes
The"Other"designationisassignedtofileswhicharenotpartoftheSQLServerinstallation.
RealTime
Theaveragenumberofbytesreadpersecondovertheselectedrange,involvingfileswhicharenotpartoftheSQLServerinstallation.
History
AverageMode-Theaveragenumberofbytesreadpersecondovertheselectedrange.
SumMode-Thetotalnumberofbytesreadfortheselectedrange.
OtherWriteBytes
The"Other"designationisassignedtofileswhicharenotpartoftheSQLServerinstallation.
RealTime
Theaveragenumberofbyteswritepersecondovertheselectedrange,involvingfileswhicharenotpartoftheSQLServerinstallation.
History
AverageMode-Theaveragenumberofbyteswritepersecondovertheselectedrange.
SumMode-Thetotalnumberofbyteswritefortheselectedrange.
TotalVLFs SeeTotalVLFsintheDiskSpacetopic.
Name Description
9.4 DiskSpace
Appliesto:SQLSentry,WinSentry,BISentry,andVSentry
TheDiskSpacetabcontainsinformationaboutdiskspaceutilizationwithinyourenvironment,brokendownbydatabaseandfile.UsetheDiskSpacetabtoidentifydiskcapacityissues,understandwherevariousdatabasefilesresideonthedisksystem,andtohelpyouindeterminingwhetheravailablediskspaceisbeingusedoptimally.
TheDiskspacetabhastwodistinctareas.Thetoppaneisagraphicalrepresentationofthedatabaselayoutatthedisklevel.Datafilesarerepresentedwithauniquesolidcolor,andeachassociatedlogfileisrepresentedwiththesamecolorwithalineoverlay.Thiscolorisrepeatedforeachfileinthegridviewfoundinthebottompane.Selectingafileineitherpanewillhighlighttheassociatedrepresentationintheotherpane.
DISKSPACEMODESTheDiskSpacetabhastwomodes,RealTimeandHistory.Theactivemodeiscontrolledbytheauto-refreshtoolbarbutton.Whentheauto-refreshPlaybuttonisselected,thetabentersReal
SentryOne User Guide | 200
Timemode.Dataforthelastcollectedsampleisshown.
Whentheauto-refreshPausebuttonisselected,thetabentersHistorymode.Historymodedisplaystheaveragediskspaceinformationoverthespecifiedtimerange.YoumaychangethetimerangeyouareviewingbyusingtheStartandEndtimesandselectingtheGobuttoninthetoolbar.
DISKSPACEUSAGEBANDWhenindexcollectionisenabled,indexinformationisviewablebydrillingintothedatabaselevelinthegridview.Whenadatabaseisselectedinthegrid,abanddisplayingthespaceusageofthatdatabase'sindexeswillappearbetweenthedisklayoutandthegrid.Eachboxrepresentsanindexwithintheselecteddatabase.Thesizeofeachboxillustratesthetotalamountofspaceusedinrelationtotheotherindexeswithinthatdatabase.
TOOLBAROncetheDiskSpacetabisinhistorymodetheDisk/DatabaseGridviewbuttonbecomesavailableinthetoolbar.SelectingDatabaseGridViewremovesthegroupings,andcanbehelpfulwhenyouareinterestedinviewingandsortingdataacrosstheentiredisksubsystem.
DiskGridView/DatabaseGridView-Whenauto-refreshispaused,theseviewingoptionsareavailable.ShowEmptyDisks-ControlswhetherornotdiskswithoutanySQLServerdatabasefilesaredisplayed.Sum/Average-Whenauto-refreshispaused,theseviewingoptionsareavailable.
ADDITIONALOPTIONSClickonanyrowtosetfocustotheassociateddatabaseandlogfile.Rightclick-Copycell/row/alloptionsavailable.Clickthe+commandofanydatafiletoshowtableandindexinformation.ForadditionalinformationaboutthosemetricsbesuretoseetheIndexestopic.
EXPORTINGANDREPORTINGOPTIONSExportingData-TheDiskSpacegridviewcanbeexportedthroughthefilemenu(File→ExportData).
QuickReport-Ifyouneedaccesstodatabaselevelsizemetricsinareportformat,aquickreportcanberunfromtheright-clickcontextmenuofanyfile.YoumayrunaQuickReportwhileinRealTimemodeforthelast7daysofdata.
Disk/FileSpaceReports-TheDisk/FileSpaceReportscanprovidediskanddatabasefilelevelmetrics.AccessthemthroughtheReportsmenu(Reports→PerformanceAnalysis→Disk/FileSpace).
DISKSPACEMETRICS
SentryOne User Guide | 201
Name Description
VirtualMachine
TheVirtualMachinethatthefileisassociatedwith.
NOTE:ThiscolumnwillonlyappearfortargetsthatarealsoHyper-VHosts,andthecolumnwillonlybepopulatedforfilesdirectlyassociatedwithVirtualMachinesontheHost(e.g.,.vhdxfiles,mounted.isofiles).
SQLServer Thefile'sassociatedSQLServer.
Database Thefile'sassociateddatabase.
File Thenameofthefile.
Filegroup
Thefilegroupoftheassociatedfile.
ForgeneralinformationaboutfilesandfilegroupswithinSQLServerseethisMSDNarticle:
FilesandFilegroupsArchitecture
Type Specifiesthetypeofthefile,beingeitherdataortransactionlog.
Size(MB) Thesizein(MB)oftheselectedfile.
Used(MB)
Theamountofthediskspacewhichhasbeenallocatedforthefileandisinuse.
ForgeneralinformationaboutpagetypesanddatafilesseethisMSDNarticle:UnderstandingPagesandExtents
Used% Thepercentageofdiskspacewhichhasbeenallocatedforthefileandisinuse.
Autogrowth
IndicatestheAutogrowthpropertiesoftheselectedfile.Ifthesettinghasbeendefinedasapercentage,thatpercentagewillbedisplayed,alongwiththeestimatedsizeinmegabytesofthenextfilegrowth.Iffilegrowthhasbeendefinedasanabsolutevalue,thatsize(MB)willbedisplayed.
Warnings
Apinkhighlightindicatesthattheautogrowthamountisgreaterthantheremainingfreespace.Ayellowhighlightindicatesthatautogrowthissetasapercent.Atanhighlightindicatesthatautogrowthislessthan10MBorgreaterthan1GB.
MaxFileSize(MB) Themaximumfilesizeallowedforthisdataorlogfile.
Thetotalnumberofvirtuallogfiles(VLFs)whichcomposethetransactionlog.EachphysicaltransactionlogismadeupofanumberofsmallerVLFs.Whenthetransactionloggrows,byeitheramanualaction,orbecauseofanautogrowth,thenumberofvirtuallogfileswhichcomposethetransactionlogwillalsoincrease.
TheactualnumberofcorrespondingVLFswhichareaddedduringanyloggrowthisdependentuponthesizeofthegrowth.Referencethebelowtable:
Autogrowthsize VLFscreated
<64MB 4
SentryOne User Guide | 202
TotalVLFs>=64MBand<1GB 8
>=1GB 16
Ifthetransactionloghasbeenallowedtogrowfrequentlyinsmallincrements,youmayseealargenumberofVLFs.AlogfilecontainingalargenumberofVLFsmaydecreasedatabaseperformance.
ForgeneralinformationabouttransactionlogarchitectureseethisMSDNarticle.
Warnings
AtanhighlightindicatesthatTotalVLFsaregreaterthan100.ApinkhighlightindicatesthatTotalVLFsaregreaterthan300.
ActiveVLFs
Thenumberofvirtuallogfiles(VLFs)containinglogrecordswhicharestillneeded.Thereareanumberofcriteriafordefiningwhenalogrecordisneeded;formoreinformationseethisTechnetarticle.Alogrecordwhichisstillneededisdefinedasanactivelogrecord,anditfollowsthatanyVLFcontainingatleastonactivelogrecordisanActiveVLF.
MinVLFSize(MB) Thesize(MB)ofthesmallestexistingVLF.
MaxVLFSize(MB) Thesize(MB)ofthelargestexistingVLF.
AvgVLFSize(MB) Theaveragesize(MB)ofthoseVLFswhichcomposethelog.
AutogrowthVLFcount
ThenumberofVLFswhichwillbecreatedduringthenextAutoGrowthevent.Whenthetransactionloggrows,byeitheramanualaction,orbecauseofanautogrowth,thenumberofvirtuallogfileswhichcomposethetransactionlogwillalsoincrease.Thisnumberisdependentuponthesizeofthegrowth,referencethetablebelow.
Autogrowthsize VLFscreated
<64MB 4
>=64MBand<1GB 8
>=1GB 16
AutogrowthVLFSize(MB)Thesize(MB)ofeachVLFwhichwillbecreatedduringthenextautogrowthevent,giventhecurrentAutogrowthsettings.
LastBackupTime
Thelastrecordedbackuptimefortheassociatedfile.
Warnings
Apinkhighlightindicatesthattherearenorecenttransactionlogbackups.
LastBackupType Thelastrecordedbackuptypefortheassociatedfile.
LogReuseWaitThisindicateswhatthetransactionlogiswaitingon,inregardstoreusingitsspace.
FilePath Thefullfilepathofthedataorlogfile.
Name Description
SentryOne User Guide | 203
9.5 TopSQL
Appliesto:SQLSentry,BISentry,andDBSentry
TheTopSQLtablistsallTSQLbatches,storedprocedures(RPCs),andstatementseventscollectedforthecurrentdaterangethatexceededtheMinimumDurationspecifiedintheSettingspane.ThedefaultfilterisDuration,butfilteringusingCPUandIOisalsoavailable.Thedefaultminimumdurationis5seconds,butthiscanbeadjustedupordownasneededthroughtheTopSQLSourceSettings
InordertocollectTopSQLmetricsforAzureSQLDatabaseTargetsthe“AllowSentryOneMonitoringObjectsinTarget”settingundertheAzureSQLDatabaseConnectionsettingscategorymustalsobesettoTrue.ThisoptionwillcreateafewobjectswithinaSentryOneschemaonthetargetdatabase.
HOWCANICHANGEWHATISCOLLECTEDFORTOPSQL?YoucanchangetheTopSQLwhichiscollectedbySentryOnethroughtheTopSQLSourceSettings.YoucanchangetheTopSQLeventscollectedbySentryOnethroughtheTopSQLSourceSettingsattheselevels:AllTargets(Global),Site,TargetGroup,Target,andInstance.
Asareminder,allSettingshaveahierarchicalconfiguration,andworkthroughtheprincipleofinheritance.Anychangesyoumakeatonelevelwillbeautomaticallyinheritedbyallobjectsbelowit.FormoreinformationaboutinheritancewithinSentryOne,seetheAlertingandResponseSystemtopic.
MoreInformationandExamplesofChangingTopSQLSettings
Seebelowforexamples:
IfyouwantedtoconfiguretheTopSQLMinimumDurationCollectionSettingGlobally:
1. SelecttheSharedGroupsnodeintheNavigatorPane2. IntheSettingspane,usethetopdrop-downlistandselectSQLServerSettings.IfyoudonotseetheSettingspaneonceyouhaveselectedyourdesirednodeintheNavigatorpane,usetheViewMenu(View→Settings).
3. Usetheseconddrop-downlisttoselectTopSQLSource.YoushouldnowseetheTopSQLSourceSettingsthatarebeingappliedGlobally.
4. ChangetheMinimumDurationtothedesiredvalue,itwillbesavedautomatically.
IfyouwantedtoconfiguretheTopSQLMinimumDurationCollectionSettingforanindividualInstance:
1. SelectthedesiredInstancenodeintheNavigatorpane.2. IntheSettingspane,usethetopdrop-downlistandselectSQLServerSettings.IfyoudonotseetheSettingspaneonceyouhaveselectedyourdesirednodeintheNavigatorpane,usetheViewMenu(View→Settings).
3. Usetheseconddrop-downlisttoselectTopSQLSource.YoushouldnowseetheTopSQLSourceSettingsthatareconfiguredfortheInstance.
4. WithintheCollectionSettingsSectionchangetheInheritFromParentSettingtoFalse.5. ChangetheMinimumDurationtothedesiredvalue,itwillbesavedautomatically.
ThereareafewadditionalthingsyoushouldknowregardingtheTopSQLSourceSettings.
ThereisanANDrelationshipthatexistsbetweentheMinimum Duration,Minimum CPU,MinimumReads,andtheMinimum WritesCollectionSettings.Thismeans,thatinordertobecollectedasTop
SentryOne User Guide | 204
SQL,theeventwillneedtosatisfyeachindividualCollectionSetting.Forexample,ifyousettheMinimumDurationat10secondsandtheMinimumReadsat25,aneventwouldneedtomeetbothaMinimumDurationof10secondsANDaMinimumReadsof25tobecapturedinTopSQL.
Minimum Durationcannotbesetbelow100msunlessMinimum CPU,Minimum Reads,orMinimumWritesisgreaterthan0.Thislowerlimitisenforcedbecausesettingthisthresholdsbelow100msforanextendedperiodoftimecoulddramaticallyincreasethevolumeofdatacollectedandstoredbySentryOne,andhaveanegativeimpactonthemonitoredserver.SentryOne'sQuickTracefunctionalityisbettersuitedtoanalyzeextremelyshortdurationevents.
HOWCANIADJUSTCAPTUREDTEXTDATALENGTH?BydefaulttextdataforcapturedTopSQLeventsistruncatedat10,000characters.YoucanchangethismaximumlengthintheMonitoringServiceSettings(Navigator→Configuration→GlobalSettings→Advanced→QueryCollectionMaxTextLength).
HOWCANIHIDEQUERIESWITHINTOPSQLANDSTOPALERTSABOUTTHEM?Youcanhideindividualqueriesorgroupsofquerieswiththeright-clickcontextmenuHidecommand.
Tohideasinglequerysimplyselecttherowyouwishtohide,right-clickandchoosetheHidecommand.Tohideagroupofqueries,firstdragacolumnheadertothetopofthegridviewtogrouplikeitems.Nextselectthegroupheaderinthegridviewandusetheright-clickcontextmenuHidecommand.
OnceaqueryhasbeenhiddeninTopSQLyouwillnolongerbealertedaboutitforanyoftheTopSQLrelatedConditions.YoucanunhideallhiddenqueriesbyselectingtheShowHiddenbuttonfromthetoolbar.TounhideanindividualquerypermanentlyusetheVisible(availableinthecolumnchooser)-checkboxthattogglestheeffectof"Hide/HideGroup".
DISPLAYPANES
Filter
TheFilterpaneprovidesthefollowingfiltersforcontrollingwhichrecordswillbedisplayed:SQLServers,Applications,Databases,andHosts.
Selectanycombinationofitemstosetthefilters.Toselectmorethanoneitem,useshift-clickorctrl-click.ToviewthefilteredresultsclicktheRefreshtoolbarbuttonorF5.
ShowTopControl-Dependingonthelengthofthedisplayedinterval,youmayhavealotofdatatoworkwith,usethissettingtocontrolhowmanyrowsareretrieved.
TheFilterpaneisnotdisplayedonanAzureSQLDatabasetarget.
RunningQueries
TheRunningQueriespaneshowsallrunningqueriesmatchingthecurrentfiltersandisindependentofthetimerangesetting.TheViewbuttoninthePlancolumnwillopenaPlanExplorersessionfortheassociatedquery.TheTextDatacolumnshowstheoriginaltexttheclientsenttotheserverandtheActiveStatementcolumnshowsthecurrentlyrunningstatement.
RunningQueriesisnotsupportedforSQLServer2000orAzureSQLDatabase.
Note:ThetextdatafortheactivestatementisdisplayedintheTextDatapanewhentheActiveStatementcellisselected.
TheCompletedQueriespanelistsallrecordsmatchingthecurrentfilters.TheView
SentryOne User Guide | 205
CompletedQueries
buttoninthePlancolumnwillopenaPlanExplorersessionfortheassociatedquery.Thedefaultfilteristodisplayallrecords.Therearetwomodesforthispane:DefaultandTotals.
Defaultmodelistspresentsalleventsfortheactivedaterangeinastandardlistformat,sorteddescendingbyEndTimebydefault.DefaultmodeisactivatedwheneverAuto-refreshisenabledbyclickingthe"Play"buttononthetoolbar,inwhichcasetheeventsforthelast10minuteswillbeshown,withneweventscominginautomaticallyatthetopofthelist.
TotalsmodeisenabledbyselectingtheShowTotalsbutton.ThiswillgroupalllikeeventstogetherusinganormalizedversionoftheTSQLwithallvariableparametersreplaced,andwillshowaggregatesforeachgroup.ThisenablesyoutoquicklydeterminewhicheventsareresponsibleforthemostCPUorIOactivityfortheactivedaterange.
SentryOne8.2introducesenhancedSQLtextdatanormalization.Ifupgradingfromabuildpriorto8.2,enhancednormalizationmustbeactivatedintheMonitoringServiceSettings>PerformanceMonitortab.
ProcedureStats
TheProcedureStatspaneprovidesaggregateinformationforallproceduresmatchingthecurrentfilters.TheViewPlanbuttoninthePlancolumnwillopenaPlanExplorersessionfortheassociatedprocedure.AdditionalhistoricalinformationmaybeavailableintheRuntimeStats.YoucanreachRuntimeStatsbyrightclickingonaprocedureandselectingJumpto->RuntimeStats.
SentryOneinstallationsupgradedfromaversionolderthan8.2willneedtoenabletheCollect Query StatsoptionintheTopSQLSourcesetting.
ProcedureStatsisnotavailableforSQLServer2000orSQLServer2005.
QueryStats
TheQueryStatspaneprovidesaggregateinformationforqueriesmatchingthecurrentfilter.Thisareawillalsoprovideinsightintoqueriesthatrunveryquicklyandinhighvolume.
SentryOneinstallationsupgradedfromaversionolderthan8.2willneedtoenabletheCollect Query StatsoptionintheTopSQLSourcesetting.
QueryStatsisnotavailableforSQLServer2000orSQLServer2005.
TextData TheTextDatapaneshowstheTSQLtextdataforthecurrentlyhighlightedTopSQLrecordwithsyntaxhighlighting.
PROCEDURESTATSANDQUERYSTATSCOLLECTIONThereare3settingsthatcanbeadjustedtochangehowlongaquerymustruntobecollected.ThesesettingsarelocatedintheTopSQLSourceareaintheSettingspane.
QueryStatsSampleInterval–SpecifieshowoftentosamplequerystatsFilterTimeSpan–SpecifiesthebaselengthoftimeoverwhichthecollectionfilterswillbeappliedtoQueryStatsMinimumDuration–SpecifiestheminimumdurationforastatementtobeloggedFilterFactor–TheFilterFactoriscalculatedbydividingtheQueryStatsSampleIntervalbytheFilterTimeSpan.ThecollectionfilterssuchasMinimumDurationaremultipliedbythisvaluewhenappliedtoQueryStatscollection.
EachoftheseSettingsplayapartinwhatiseffectivelycapturedforQueryStatsinyourenvironment.Asanexample,usingthefollowingdefaultsettings:
QueryStatsSampleInterval=60secondsFilterTimeSpan=30seconds
SentryOne User Guide | 206
MinimumDuration=5seconds
Thetotalcumulativedurationofallexecutionsofaqueryoverthe60secondsampleintervalmustbegreaterthan10seconds.
CONTROLS
TOPPANEFilter(minimizedbydefault)-Afterchanginganyofthefilters,itisnecessarytoclicktheRefreshbutton,orpressF5,toapplythefilter.Clickonacombinationofitemsinanyoftheliststosetthefilters.Thedefaultfilteristodisplayallrecords.Toselectmorethanoneiteminalist,useshift-clickorctrl-click.MinimumDuration-settofilterbytheminimumruntimeforTopSQLevents.ShowTop-Dependingonthelengthofthedisplayedinterval,youmayhavealotofdatatoworkwith.Thissettingcontrolshowmanyoftherowsareactuallyretrieved.
ADDITIONALOPTIONSGrouped(maintoolbar)-thisisanonoroffoption.Whenoff,everyTopSQLeventislisted.Whenon,theTextDatabehindtheeventisnormalizedandthenthelistisgroupedbythatnormalizeddata.ShowHidden(maintoolbar)-Youcanhideindividuallinesorgroupsofrows.Thiswilltogglethedisplayofthoselines.See"Visible"below.ContextItems
RightclickonaTopSQLeventHide/HideGroup-hidestheselectedTopSQLevents.
NOTE: This will also disable any alerts for the events, and prevent them from being displayed on theEvent Calendar
JumptoDashboard-whenShowTotalsmodeisenabledalleventsbelongingtotheselectedgroupwillbeoverlaidontheDashboard.WhentheDefaultmodeisenabledonlytheselectedeventwillbeoverlaidontheDashboard.JumptoCalendar-gotothateventontheEventCalendar(requiresservertobewatchedwithEM).JumptoRuntimeStats-opensatabshowingtheruntimestatsfortheevent.JumptoPlanExplorer-opensthePlanExplorertabintheclient.KillProcess(runningqueriespaneonly)-optiontokilltherunningprocess.
Visible(availableinthecolumnchooser)-checkboxthattogglestheeffectof"Hide/HideGroup."
TOPSQLMETRICSTOPSQLMetric
SentryOne User Guide | 207
Name Description
Server TheSQLServerinstancewheretheassociatedeventtookplace
Plan UsetheViewbuttontoopenanewPlanExplorerSessionforthecapturedplan.
TextData Associatedtextdatacapturedfortheevent.
EventClass Theeventclassoftheassociatedevent,seealso:MSDNEventClassReference.
Host NameoftheTargetonwhichtheassociatedeventisrunning.
Login TheWindowsorSQLServeraccountassociatedwiththeevent.
Application Nameoftheclientapplicationwhichcreatedtheconnection.
Database Nameofthedatabasefortheassociatedevent.
Duration Theamountoftimetakenbytheassociatedevent.
CPU TheamountofCPUtime(inmilliseconds)usedbytheevent.
CPU% ThepercentageofCPUtimeusedbythisevent,inrelationtoanyotherTopSQLEventswhichareshowninthegrid.
Reads Thenumberoflogicaldiskreadsperformedbytheserveronbehalftheevent.
Reads% Thepercentageofbytesreadbythisevent,inrelationtoanyotherEventswhichareshownintheTopSQLgrid.
Writes Thenumberofphysicaldiskwritesperformedbytheserveronbehalfoftheevent.
Writes% Thepercentageofbyteswrittenbythisevent,inrelationtoanyotherEventswhichareshownintheTopSQLgrid.
StartTime Timetheeventstarted.
EndTime Timetheeventended.
Information Additionaldatacapturedabouttheevent.
Error Errornumberofagivenevent.
SPID TheserverprocessID(SPID)thatisassignedtotheprocess.
HostProcessID TheIDassignedbythehostcomputertotheprocesswheretheclientapplicationisrunning.
HasPlan Trueiftheassociatedeventhasacapturedplan
HasStatements Trueiftheassociatedeventhascapturedstatements
Visible TheVisiblecolumnspecifiesthedefaultvisibilityfortheselectrow.QueriesmaybehiddeninTopSQL
9.5.1 PlanExplorer(integrated)
PlanExplorerisdesignedtomakequeryplananalysisfastandintuitive.ThereareanumberofwaystostartanewPlanExplorersessionwithinSentryOne.OntheTopSQLtab,theViewbuttoninthePlancolumnwillopenaPlanExplorersessionfortheassociatedcompletedorrunningquery.YoumayalsostartanewPlanExplorersessionwiththeNew Plan Explorer SessiontoolbarbuttonorthroughtheFilemenu.
PlanExplorerSessions(.pesession)aredesignedtohelpyoumanageanhistoricalrecordasyoufinetunequeries.Bydefault,anhistoricalentrywillbegeneratedaspartofthePlanExplorerSessionduringestimatedandactualplanretrieval.Seealso:PlanExplorerSessions
SQLServerMVPAaronBertrandhaswrittenextensivelyabouttheavailablefeaturesandbenefitsofusingSentryOnePlanExplorer.YoucanfindallofhisPlanExplorerrelatedpostsatthislink.
GENERAL
SentryOne User Guide | 208
ThescreenandwindowlayoutofPlanExplorerispersistedbydefault,andcanbesavedtoandloadedfromdisk.Defaulthorizontalandverticallayoutstylesareincluded;thehorizontallayoutisbettersuitedforshorterquerieswithwideplans,whiletheverticallayoutisbettersuitedforlongerqueries.Thelayoutcanbechangedbyselectingthedesiredlayoutbuttononthetoolbarorthroughthecontextmenuofanysection'sheader.
Entireplanscanbesavedtoandloadedfromfile,completewithallstatementandplaninformation.YoucansaveaplanwiththeSavebuttonlocatedonthetoolbarorthroughtheFilemenu.ASaveAscommandisalsoavailablefromtheFilemenu,allowingyoutokeepdifferentversionsofsimilarplans.
CustomizableTabLayout
ThePlanExplorertablayoutcanbecompletelycustomized.Eachtabcanbefullyundockedfromitsparentwindow,allowingyoutosimultaneouslyviewtheplandiagramalongsideanyotherchosenquerydetailtabs.Toundockatabfromitsparentwindow,simplyclickanddragthetab'stitlebar.Youmaychoosetoeitherre-dockthetabwithanexistingtab,orfloatthetabinastandalonewindow.Usethepushpintounpinthetabfromtheimmediatedockedview,anditwillbeauto-hiddenwhennotinuse.
STATEMENTSSECTIONTheStatementsTreetabshowsatreelistrepresentationoftheentirequerycallstack,includingallstatements,conditionallogicstructures,loopingstructures,nestedprocedurecalls,anddynamicSQLcalls.Estimatedcosts(Total,CPU,andIO)andestimatedrowsaredisplayedforeachstatement,andactualcostsandrowsareshownside-by-sideforanystatementscapturedviaTopSQLcollection.Anysignificantdifferences between estimated and actual rows for capturedstatements are highlighted, making it easy to spot cases where statistics may be stale.
Each of the three sections will be automatically synchronized when you select a statement. Thisincludes all the tabs in the Plan Details section. Use the Statements Tree to quickly find thehighest cost statements. Selecting any statement will show the graphical diagram, top operationslist, columns list, and tree list view for the statement’s execution plan.
TheCommandTexttaballowseditingoftheSQLforestimatedandactualplanretrieval.
NOTE:Whenusingacolumnfilterthatusesapercentvalue,useadecimalvalueforthefilter.Forexample,ifyou'dliketothefiltertobe50%,use0.5.
QUERYINFORMATIONSECTIONTheTextDatatabdisplaysthecolor-codedTSQLbatchorproceduredefinitionoftheplan.YoumaysavethetextwiththeSave SQLcontextmenucommandorcopythethetextdatatotheCommandTexttabwiththeCopy To Command Textcontextmenucommand.ThePlanXMLtabdisplaystheexecutionplaninXMLformat.Youmaysavetheplanin.sqlplanformat,withtheSaveExecution Plancontextmenucommand.
PLANDETAILSSECTIONWhenyouselectastatementintheStatementsSectionallthetabsinthePlanDetailssectionwillbesynchronizedwiththeselectedstatement.Toinspectormakemodificationstoanindex,theindexpropertieswindowcanbeopenedbyright-clickinganyindexoperationnodeinthePlanDiagramtab,oranygridrowwithintheotherPlanDetailstabs.Likewiseyoucancreatenewindexesviaaseparatecontextitem.WhenyouselectanoperationinanyofthePlanDetailstabsitwillbeautomaticallysynchronized.YoumayusetheCopycommand,availablethroughtheright-
SentryOne User Guide | 209
clickcontextmenu,tocopyanyofthegridviewdatainthePlanDetailssection.
ThePlanDiagramtabhasanOptimizedlayoutalgorithmwhichrendersplansinamuchmorecondensedviewthanSSMS,somoreoftheplanfitsonthescreenwithouthavingtozoomout.Ifneeded,youcaneasilyzoominandoutbyholdingthectrlkeyandusingyourmousescrollwheel.Optimizedplannodelabelspreventtruncationofobjectnamesinmostcases.TodisabletruncationcompletelysofullobjectnamesarealwaysvisibleusetheFull Object Namescontextmenucommand.
Theestimatedcostoftheoperationisdisplayedabovetheeachnodeformaximumreadability.ThesecostlabelsusecolorscalingbyCPU,IO,orCPU+IOsohighestcostoperationsareinstantlyobvious,evenonlargerplans.CPU+IOisusedbydefault,thiscanbechangedthroughthecontextmenuCosts Byoption.AllcostsinthePlandiagramareshowntothefirstdecimalplace.
ThroughthecontextmenuofthePlanDiagramyoumayalsochoosetoshowcumulativecostsinlieuofpernodecosts;whencombinedwithcolorscalingthisfeaturemakesiteasytoseewhichsubtreesarecontributingmosttotheplancost.
TheconnectorlinewidthcanbescaledbyeitherrowordatasizewiththeLine WidthsBycontextmenucommand.Themetricyouchoosetoscaleby,willbedisplayedaboveallconnectorlineswithinthePlanDiagram.
ThePlanTreetabisatreerepresentationoftheplanwhichshowsalloperationsandassociatedmetrics.UsethearrowstoexpandandcollapsesectionsofthePlanTree.RightclickanycolumnheaderandusetheColumnChoosercommandtoaccessadditionalplanmetrics.Anysignificantdifferencesbetweenestimatesandactualsarehighlightedasarepossibleproblematicoperationslikescansandbookmarklookups.
TheTopOperationstabcontainsasortablelistviewofallplanoperations.Thelistviewissortedbytotalcostdescendingbydefaultsoyoucanimmediatelyseewhichoperationsarethehighestcost.
TheQueryColumnstabshowsexactlyhowdataisaccessedforeachcolumnusedbythequery,includingtheassociatedoperationandestimatedrows.Thisviewmakesiteasytoidentifybookmarklookupsorindexscansoccurringbecauseindexesarenon-covering.
TheParametertabshowsallstatementparameterswithruntimeandcompiledvalues.
WhenanActualPlaniscaptured,orgeneratedtheTableI/Otabwillbeshown.Thistabbreaksdownallthereadsfromaquerybyobject,makingitveryeasytoseewherethemajorityofyourI/Oiscomingfrom.
TheWaitStatstabwasintroducedaspartofthefeaturesetofSentryOne7.2.WhenanActualPlanisretrievedwithrelatedwaitstats,theWaitStatstabwillbedisplayednexttotheResultstab.TheWaitTypeisshownalongwithanyassociatedWaitTimeorSignalTime.TheWaitStatstabcanhelpyouinidentifyingpotentialresourcebottlenecks,includingthoserelatedtomemorypressure,CPUpressure,diskI/O,andnetworking.
Note:WaitstatsareonlyavailableforqueriesexecutedagainstserversrunningSQLServer2008ornewer.
PLANHISTORYSentryOnetracksallplanversionsforaparticularqueryovertime,soyoucaneasilydeterminewhenaplanhaschangedandcausedqueryperformanceproblems.Theplansaretheestimated
SentryOne User Guide | 210
planscollectedatthetimeofqueryexecution.FormoreinformationpleaseseetheQueryPlanstopic.
9.5.1.1 PlanExplorerSessions
PlanExplorerSessionsaredesignedtohelpyoumanageanhistoricalrecordasyoufinetunequeries.Bydefault,anhistoricalentrywillbegeneratedaspartofthePlanExplorerSessionduringestimatedandactualplanretrieval.
Note:YoucanchangethebehaviorofhowPlanExplorergeneratesnewhistoricalentriesthroughtheUserPreferences(Tools→UserPreferences→PerformanceAnalysistab).TheOnlysavehistorywhencommandtextorInstancesettingschangeoptioncontrolsthisbehavior.
VERSIONHISTORYEachhistoricalentryretainsallcapturedplandetailsandmetricswithinthevariousPlanExplorertabs.Eachversionisassociatedwithauniqueversionnumber.PlanExplorerincludesaPlanHistorypane(Viewmenu→PlanHistory)whichallowsyoutoquicklynavigatethroughthedifferentversionswithintheactivePlanExplorerSession.YoucanalsodeleteaversionwiththeDeletecommandaccessedthroughthePlanHistorypanecontextmenu.
ADDINGCOMMENTSPlanExploreralsoallowsyoutoaddcommentstoeachhistoricalversion(Viewmenu→Comments).Thisallowsyoutoeasilykeeptrackofthereasoningbehindanychangesyoumake,suchaschangestothecommandtextoranyindexingoptimization.
MULTIPLESESSIONSANDTABSAseachsessionismanagedwithinitsowntab,multiplePlanExplorerSessionscanbeopenatthesametime.SentryOnewasdesignedwithamultipledocumentinterfaceallowingyouanumberofoptionswhenmanagingtabbedsessions,includingtheabilitytoarrangetabsbothhorizontallyandvertically,andtheabilitytotearofftabs.TabwindowingoptionscanbefoundintheWindowmenu.
SHARINGSESSIONFILESPlanExplorerSessionfilescanbeeasilysharedwithothers,eveniftheydon'thaveaccesstothefullSentryOneClient.
SentryOnePlanExplorerisastand-alonequeryanalysistool.PlanExplorerusessessionfilesinmanaginghistory,justliketheintegratedPlanExplorer,andcontainscompletesupportforopeningPlanExplorerSessionfilesgeneratedintheSentryOneClient.
PlanExplorercanalsoopensessionfilesinalimitedfashion.WhenyouopenaPlanExplorerSessionfile(.pesession)inPlanExploreryouarepresentedwithalistofallthehistoricalentriesinthatsession.Thelistcontainsinformationabouteachhistoricalentry,includingversionnumbersandcommentspreviouslyadded.Onceauserselectsaversiontheywishtoopen,itwillbeopenedasa.queryanalysisfile.
ThisispossiblebecauseeachhistoricalentryinaPlanExplorerSessionisactuallya.queryanalysisfile.PlanExplorerSessionfilesarearchivefiles,containingboththeindividual.queryanalysisfiles
SentryOne User Guide | 211
andmetadataaboutthesession.
YoucanalsosaveanysinglehistoricalentryofaPlanExplorerSessionasastand-alone.queryanalysisfile.Withtheentryyouwishtosaveactive,usetheSaveAscommand(Filemenu→Saveas)andchoosethedesiredfiletype.
STARTINGANEWSESSIONYoucanstartanewPlanExplorerSessionanumberofways,including:
Filemenu→NewFromtheToolbarusetheNewPlanExplorerSessionbuttonDragginganddroppingaplanfileontotheapplication
SAVINGASESSIONYoucansaveaPlanExplorerSessionasfollows:
Filemenu→Save/SaveAsFromtheToolbarusetheSavebutton
9.5.1.2 SQLPerformance.comPlanUpload
SentryOnePlanExplorerincludessupportforuploadingseveraldifferentplanfiletypesdirectlytoSQLPerformance.comfromtheclient.Thisfeatureallowsyoutopostaquestion,withanincludedplan,totheSQLPerformance.comQ&Asiteanswers.sqlperformance.com.
Note:ForfurtherinformationaboutSQLPerformance.comandthePlanExplorerPlanUploadfeaturepleaseseethisannouncementbySQLServerMVPAaronBertrand.
YoumaypostthefollowingfiletypesdirectlytoSQLPerformance.comfromthePlanExplorerClient:
.pesession
.queryanalysis
.sqlplan*
.xml*
Note:Whenyouposteithera.sqlplanfileora.xmlfilethroughtheSentryOneClienttoSQLPerformance.comitwillautomaticallybeconvertedtoa.queryanalysisfile.
POSTINGAPLANTOSQLPERFORMANCE.COMTherearetwodifferentoptionsforpostingplanstoSQLPerformance.comfromtheSentryOneClient.ThefirsttimeyoupostaplantoSQLPerformance.comyouwillbepromptedtoregister.YourlogincredentialsforSQLPerformance.comwillbesavedlocallyinasecuremanner.OnceyouhaveuploadedaplantoSQLPerformance.comaweblinkisembeddedinthefile.Thislinkwillallowyoutojumpdirectlytoyourpost.Thislinkwillalsobeavailableforanyonewhodownloadstheplan.
SentryOne User Guide | 212
PostToSQLPerformance.comtoolbarbutton
FromthecontextofanyopenplanwithinPlanExplorer,youmayusethePostToSQLPerformance.combuttonfoundonthetoolbar.Thiswillopenaquestionform,automaticallyattachingthecurrentplan,allowingyoutoaddyourdesiredcommentorquestion.
YoualsohavetheoptiontoAnonymizeaqueryplanbeforeuploadingitbyusingtheassociatedcheckbox.Seealso:AnonymizePlans.
HelpMenu→SQLPerformance.comPost
AlternativelyyoumayuploadaplanfromtheHelpMenu(Help→SQLPerformance.comPost).Usingthismethodyouarenotrestrictedtothecurrentlyopenplan.Youmayuploadanyplanofyourchoice.
Note:WhenyouuploadaplanfromtheHelpMenualinkbacktothepostwillnotbeembeddedinthelocalfile.TheembeddedlinkwillbeavailableforthosewhodownloadtheplanfromSQLPerformance.com.
POSTING.SQLPLANAND.XMLFILESInadditiontoSentryOnePlanExplorer'sfiletypes(.queryanalysis,.pesession)youmayalsopost.sqlplanand.xmlfiletypesdirectlytoSQLPerformance.comthroughthePlanExplorerClient.Duringtheuploadprocessthesefileswillbeautomaticallyconvertedtothe.queryanalysisfiletype.
SECURITYOBFUSCATIONRegardlessofhowyouuploadaplan,connectionparametersstoredbySentryOnePlanExplorerareremovedfromtheplanduringtheuploadprocess.Thefollowingidentifyingconnectionparametersareautomaticallyremovedfromplansduringtheuploadprocess:
InstanceDatabaseLogin
ANONYMIZEPLANSSentryOnePlanExplorerhastheabilitytoobfuscatethesensitivedatainyourplans.PlanAnonymizationwillchangeallDatabase,Table,andColumnnamesinyourplanstogenericrepresentations.
Therearetwowaystousethisfeature:
Duringplanuploadyouwillbepresentedwiththeoptiontoanonymizetheplan.OnthePosttoSQLPerformance.comdialogform,selecttheAnonymizethequeryplanbeforeuploadcheckboxoption.Alternatively,youmayanonymizethecurrentlyopenplanusingtheAnonymizeButton
SentryOne User Guide | 213
foundonthetoolbar.Youroriginalplanwillbepreservedinthecurrenttabandtheanonymizedplanwillbeopenedinanewtab.
9.5.1.3 PlanDiagramOptions
PlanExploreroffersseveraloptionsandstyleswhichcanbeappliedtothePlanDiagram.WhenaplanissavedthesevisualplanpropertiesaremaintainedaspartthePlanExplorerSession.ThisallowsyoutocreateaveryspecificviewofthePlandiagramforbothsharingandtroubleshootingpurposes.ForacompleterundownofthisfeaturepleaseseethisblogpostfromGregGonzalez.
PlanDiagramToolbar
Option Description
ZoomScalethePlanDiagrambetween6%-400%ofitsoriginalsize.YoumayalsouseCTRL+mousescrollwheeltoperformthisoperation.
Filter FilternodesfromthePlanDiagrambasedonCost.
Stretch StretchthelinksbetweenPlanDiagramnodes.
Flatten FlattensthespacebetweennodelevelsinthePlanDiagram.
Mode ThereareseveralModesavailablewhichwillchangethelayoutoftheentirePlanDiagramtree.
LinkStyle TheLinkStyleusedbetweennodesinthePlanDiagram.
Rotation RotatestheentirePlanDiagram90°.
Defaults Allplandiagramoptionsarereset.
9.5.1.4 IndexAnalysis
ThePlanExplorerIndexAnalysistabprovidesasandboxenvironmentforplanningindexingstrategyrelativetoaspecificoperationinaquery.ForIndexAnalysistobepopulated,thequerymustbeexecutedfromwithinthePlanexplorersessionusingthe“GetActualPlan”menuoption.
Indexanalysisinvolves5majorareas.
THESTATEMENTTREEANDPLANDIAGRAMSeethePlanExplorer(integrated)sectionformoreinformation.
THETEXTDATAAREASeethePlanExplorer(integrated)sectionformoreinformation.
SentryOne User Guide | 214
THEINDEXESDATAGRIDThetoprowistheindexscore.Thisisbasedonseveralfactorsincludingcovering,valuedensity,sortingeffectiveness,andseekability.100%isthebestpossiblescore,howevertherearesomesituationsthatwillpreventthepossibilityofa100%score.Oneknowncauseiswhencolumnsaremissingstatistics.Thiswillbeindicatedbythepresenceofa“?”inseveralofthecolumnstatisticsvaluesforatablecolumn.
Columnstatisticsareprovidedforeachtablecolumnusedbythequery,withtablecolumnsusedbytheselectedoperationdisplayedinbold.
DATAGRIDCOLUMNS:TableColumn Nameofthecolumnintherelevantdatabasetable
Density Howselectivetherowvaluesareforthecolumn(lowervaluesaremoreselective)
LastUpdate Thedatethecolumnstatisticswerelastupdated
Avg.Length Averagelengthofdatavalues
EstimatedSize(MB) Theestimatedsizeofthecolumnvalues(inMB)
Output Checkedifthecolumnisanoutputfortheselectedoperation
SortType Sortorder(ASC,DESC)
SortOrder Ordinalpositionofthecolumninthesort
Predicate Thesearchorjoinpredicate(s)appliedtothetablecolumnbytheoperation
Columnsafterthe“Predicate”columnareallindexcolumns.Theseincludebothsomespecialcaseindexes,aswellastheindexesdefinedonthetable.Theyarelistedfromlefttorightinthefollowingorder:
1. Clusteredindex(ifexisting)2. Indexusedbytheoperation(ifnottheclusteredindex)3. MissingindexesaslistedintheSQLServermissingindexesDMO4. RecommendedindexesgeneratedbyPlanexplorer.Onoccasion,PlanExplorercanrecommendabetterindex
5. Theothernon-clusteredand/orcolumnstoreindexesthatexistforthetable,ordereddescendingbyscorefromlefttoright
Indexescanbemodified,aswellasscriptedforcreate,drop,ordropandcreate.Youmayalsomanuallyupdatestatisticsusingthebuttonatthebottomoftheindexcolumn.
INDEXCOLORING: Shadesofgreenindicatethattheordinalpositionofthecolumnissuchthatafavorableoperationmayoccur,suchasaseekoverascan.
Darkershadesofgreenindicatethatthecolumnisfiltered.
Yellowindicatesthatthecolumnisusedinthequery,andcovered,butisnotpartoftheleftsubsetoftheindexkey.Includedcolumnsarealsolistedinyellow.
Redindicatesthatthecolumninvolvedisnotcoveredbytheindex.
THEPARAMETERSDATAGRIDTheparametersgridlistsparametersusedbythequery.ThisdiffersfromthePlanexplorerParameterstabinthatitusestippingpointlogictohelpdeterminethetypeofoperation(SEEKorSCAN)thattheoptimizermightchooseforthatparametervalue.Thisisnotanexactscience,and
SentryOne User Guide | 215
shouldbeusedasaroughguideline.
Theparametersgridprovidesa“TestValue”columnwhichallowsyoutoenteranewparametervalue,andaskforanewestimatedplan.Thisallowsyoutotestdifferentparametervaluesagainsttheplantoseeiftheplanshapewillchangegiventhatparametervalue.
ThesmallarrowstotherightofparametervaluesallowyoutoquicklyplacethevalueofthatparameterintotheTestValuescolumn.
THESTATISTICSHISTOGRAMCHARTThehistogramchartdisplaysthehistogramstepsfortheindexstatisticsvisually.Thisallowsyoutoquicklyspotpotentialparametersniffingissues.
Thischartalsoworksinconjunctionwiththeparametersgrid,andselectedparametersthatarepresentinthehistogramwillhavetheirhistogrambucketshighlightedonthechart.Thisalsoworksforparameterranges.
9.5.2 TopSQLRuntimeStats
TheTopSQLRuntimeStatsprovidesinsightintothefrequencyanddurationofthequeriesandproceduresthatarecapturedbyTopSQL.
RUNTIMEGRAPHSTherearetwoviewsavailableforthegraph,RuntimeHistoryandRuntimeAggregates.Thisselectioncanbemadefromthemaintoolbar.Thesegraphsmakeiteasytoidentifyruntimetrends,whichcanbeanindicatoroforeventuallyleadtoperformanceissueswiththeeventortheserver.
RuntimeHistoryGraphThisgraphshowsanentry'sactualruntimeandstatusoverthespecifiedinterval.Aredbarindicatesthatthatinstancefailed.
RuntimeAggregatesGraphThisgraphsshowthedistributionoftheentry’sactualruntimeoverthespecifiedinterval.
GRAPHCONTROLSUsetheNavigationtoolbartochangethestartdate/timeandintervalforthegraph.TheDayscontrolcangooutupto60daysatatime.Whenevertheselectedintervalislessthan1day(1minutethrough4hours),theDayscontrolwillbechangedto1day.
Min/MaxYVal
Whenaruntimegraphisfirstdisplayed,SentryOnewilltrytodeterminethemostappropriateintervalandmaximumY-axisvalue.Youcanchangeeitherofthesesettingsatany
SentryOne User Guide | 216
time.
Auto-scaletoMaxValue
CheckingthisboxwillautomaticallyselecttheappropriateMaxYValueofthedatabeingshowninthecurrentview.
IntervalType ChangestheintervalusedfortheY-axis.
ShowValueLabels
Deselectthischeckboxtohidethebarvaluelabels.Thiscanbecomenecessaryforbroaderrangeswithhundredsorthousandsofbarstoreducethenoiseonthegraph.
RUNTIMEGRIDTheRuntimeGridprovidesadditionalinformationaboutcapturedTopSQLevents.ThisincludesbotheventsthatarecapturedaspartofthestandardTopSQLcollection,andfastrunningeventswhicharecapturedaspartofQueryStatscollection.TheeventslistedintheRuntimeGridarenotdependentonanyspecifictimerangeyouareviewing,anddonotupdatebasedontheselectedchartview.Instead,thecountrepresentsthetotalnumberofobservedoccurrencesoftheeventforwhichyouhavehistoryinSentryOne.TherespectiveMin,Max,andAveragedurationsareupdatedasnewoccurrencesoftheeventsareobservedinyourenvironment.
EventsarepurgedfromthelistaccordingtothePerformanceMonitor–PurgeHistoryOlderThansetting.YoucanseethelasttimeaneventoccurredbyusingtheLastExecutioncolumn.Ifaneventhasnotbeenobservedsincetheeffectivepurgehistoryolderthandate,therecordofitwillberemoved.
CONFIGURINGSETTINGSANDALERTSFORINDIVIDUALEVENTSInadditiontothecountanddurationmetrics,thereisalsoanoptiontooverrideexistinginheritedTopSQLRuntimethresholdsforspecificTopSQLevents.Todothis,clicktheOverridecheckboxtotherightofthevaluethatyouwouldliketooverrideandchangethevalue.ThesethresholdscorrespondtotheTopSQL:RuntimeThresholdMaxandTopSQL:RuntimeThresholdMinconditions,whichcanbeconfiguredattheInstancelevelandabove.Theabilitytoconfigurethresholdsforspecificevents,withoutalteringInstanceandgloballevelthresholds,allowsyoutofinetunethealertsyoureceive.
NAVIGATIONTOTHETOPSQLRUNTIMESTATSToaccesstheTopSQLRuntimeStats,youcanrightclickonaSQLServerInstanceandselectJumptoTopSQLRuntimeStats.Alternatively,youcanrightclickonanentryintheTopSQLtabandselectJumptoRuntimeStats,whichwillautomaticallyhighlighttheentrythatwasselected.
ForinformationregardingtheEventManagerRuntimeStats,seeRuntimeStats.
9.6 AlwaysOn
Appliesto:SQLSentry
SentryOne User Guide | 217
TheSQLSentryAlwaysOnManagementpagecanbeaccessedbyright-clickingtheAllTargetsnodeintheNavigatorpaneandchoosingOpen→AlwaysOnManagement.YoumayalsoopenAlwaysOnManagementfromthecontextmenuofanySiteorGrouplevelnodeasapplicable.TheAlwaysOntabisalsoavailablewithinSentryOneforanymonitoredSQLServerinstancehostinganavailabilitygroupreplica.
TheAlwaysOnManagementpageisdividedintothreemainareas:
TheOverviewAreaoffersseveraluniqueactionableviewsofyourAlwaysOnenvironment,includingeasilydigestibleat-a-glanceStatusInformation.
TheHistoryAreadisplaysbothhistoricalchartsandAlwaysOnhealtheventsfromyourenvironment.
TheDetailsGridviewAreadisplaysbothhighlevelanddetailedlevelmetricsconcerningyourenvironment.
YoumaycustomizevisualaspectsoftheAlwaysOnviewsaroundyouruniqueenvironment,includingthedefaultthresholdsforLogandRecoveryQueues.SeetheCustomizationsectionformoreinformation.
AlwaysOnManagementincludesfullalertingcapabilitysurroundingyourAlwaysOnenvironment.FullycustomizableConditionsareavailabletoalertyouonbothHealthandFailoverstatus.Formoreinformation,seetheAlwaysOnAlertingsection.
SERVERVISIBILITYWhenyoumonitortheSQLServerinstancehostingthePrimaryReplicaofanavailabilitygroupwithSQLSentry,theentiretopologyofthatavailabilitygroupwillbedisplayedaspartoftheOverviewArea.Unwatchedinstanceshostingreplicasaredisplayedwithagraybackground.
InordertoenablecompleteAlwaysOnmonitoringandalerting,eachreplicaintheavailabilitygroupshouldbewatchedwithSQLSentry.Statusinformationisnotavailableforunwatchedreplicas.Thisincludeshistoricalmetrics,charts,anddatapertainingtoanyassociatedSendorRecoveryQueues.
Tomonitoraserverright-clickthenodeandchooseWatchfromthecontextmenu.
OVERVIEWAREATheOverviewAreacontainsseverallayoutsformanagingyourAlwaysOnenvironmentfromseveralperspectives,including:theWindowsServerFailoverClusterlevel,theAvailabilityGrouplevel,theSQLServerInstancelevel,andtheReplicalevel.TheLayoutStylecanbechangedfromthedropdownlistlocatedinthetopcorneroftheOverviewArea.
StatusinformationwhichiscommontoseveralviewscanbefoundintheStatusInformationsection.
STATUSINFORMATIONEachoftheOverviewDiagramscontainsauniquerepresentationofthoseindividualavailabilityreplicas/WSFCswhicharepartofyourmanagedAlwaysOnenvironment.Regardlessoftheselectedview,thesenodesandthepipesconnectingthemallshareacommonsetofvisualstatusinformationwhichisdescribedbelow.
ContextMenuOptions
SentryOne User Guide | 218
Watch–WatchtheSQLServerinstancehostingthereplicawithSentryOnePerformanceAnalysisAddReplica–OpensthenativeSSMS"AddReplicatoAvailabilityGroup"dialogRemoveReplica–OpensthenativeSSMS"RemoveSecondaryReplicafromAvailabilityGroup"dialogFailover–OpensthenativeSSMS"FailOverAvailabilityGroup"dialog
NodeSpecificThenodesconveystatusandconfigurationinformationaboutthereplica,includingQueueHealth,Connectionmode,andoverallHealthStatus.
Labels
InstanceName-OnapplicableviewsthenodecontainsalabelwiththeSQLServerinstancename.
AvailabilityReplicaRole-Eachnodeislabeledindicatingtheroleoftheavailabilityreplica,asAGPrimary,AGSecondary,orFCISecondar
IndicatorBars
HealthStatus-Thehealthstatusoravailabilitygroupstateisrepresentedbytheleftbarofthenode.Greenrepresentsahealthyavailabilitygroupstate.Pinkrepresentsanunhealthyavailabilitygroupstate.TheHealthStatusbarwillalsobepinkifconnectivityhasbeenlostbetweentheSentryOneMonitoringServiceandtheSQLServerinstance.
QueueIndicator-TheLogSendQueue/RecoveryQueuestatusisvisuallyrepresentedbythebarontheright.Astherespectivequeuegrowsthecolorwillchangefromadarkgreen,tolightgreen,toorange.OncetheQueueKBThresholdhasbeenpassedthecolorwillchangetored.
StatusBoxes
FailoverMode-Thefailovermodeoftheavailabilityreplicaisindicatedintheleftstatusbox.
AutomaticFailovermode-representedwithaplayicon
Manualmode-doesnotcontainanicon.
ClientConnectionMode-Theclientconnectionmodeoftheavailabilityreplicaisrepresentedinthecenterstatusbox.Iftheavailabilityreplicaisareadablesecondaryitwillberepresentedwithasmallglyph.
FailoverClusterInstances-IfthenodeisaFailoverClusterInstance(FCI)itwillberepresentedintherightstatusbox.
AvailabilityMode
Theavailabilitymodeoftheavailabilityreplicaisrepresentedasfollows:
Asynchronous-commitmode-isrepresentedbytwoblacklinesdrawnonthepipebetweenavailabilityreplicas.
Synchronous-commitmode-isrepresentedbytheabsenceofthesetwoblacklinesdrawn
SentryOne User Guide | 219
onthepipe.
PipeandColorSpecificThevisualcharacteristicsofthepipesconnectingthenodesconveystatusinformationaboutthehealthoftherelationshipbetweennodes.Pipesaturationisanindicatoroftheamountofinformationmovingbetweenreplicas.Pipecolorisdependentontherecoveryqueueofthesecondary.
PipeSaturation
Thepipebecomessaturatedastheamountofdatabeingtransferredincreases.MoreexplicitlythepipebecomessaturatedastheKBToReplica/secvalueapproachestheKBToReplica/secthreshold.
Bydefault,theKBToReplica/secthresholdvalueisdynamicandwillbethehighestglobalvalueseenbetweenreplicassincefirstopeningtheAlwaysOntab.
TheKBToReplica/secthresholdcancustomizedwiththeAlwaysOn.AvailabilityReplicaTransferThresholdtableintheSentryOneDatabase.SeeAlso:Customization
PipeColor
Thepipecolorchangesastherecoveryqueuegrows;thecolorwillchangefromadarkgreen,tolightgreen,toorange,andfinallyoncetheRecoveryQueueKBThresholdhasbeenpassedthecolorwillchangetored.
BydefaulttheRecoveryQueueKBThresholdvalueis1MBor1024KB.TheRecoveryQueueKBThresholdcanbecustomizedwiththeAlwaysOn.AvailabilityReplicatableintheSentryOneDatabase.SeeAlso:Customization
HISTORYAREATheHistoryAreacontainstabsforCharting,ErrorLog,andReplicaStateChanges.Informationineachtabisshownbasedontheselectedtimerange.Inlivemode,eachtabincludesthelasttenminutesofcollecteddata.Updatingthetimerangeonthetoolbarwillchangethisdisplayedrange.EachoftheHistorytabsiscontextawareandwilldisplayinformationbasedonthenodeorrowselectedineithertheOvervieworGridviewArea.Clickingonthediagrambackgroundwilldisplayloginformationforallnodesandreplicas.
ALWAYSONHEALTHCOLLECTIONTheErrorLogandReplicaStateChangestabsareinitiallydisabled.ThisisbecauseAlwaysOnhealthcollectionisdisabledbydefaulttopreventinnocuousentriesassociatedwithExtended
SentryOne User Guide | 220
EventsfrombeingrepeatedlyloggedtotheSQLServerErrorLogwithoutyourknowledgeorapproval.PleaseseetheupdatebelowforalinktoCU6forSQLServer2012SP1,whichcontainsafixforthisissue.
Ifyou’dliketoenablehealthcollection,clicktheEnablebuttononeithertheErrorLogorReplicaStateChangestab.
IMPORTANT:EnablingautomatedAlwaysOnhealth(errorandstatechangeinfo)collectionwillcauseinnocuousentriesassociatedwithExtendedEventstoberepeatedlyloggedtotheSQLServerErrorLog,asdescribedinMicrosoftConnectitem783036.WeareworkingcloselywithMicrosofttocorrectthisunfortunatebehavior.Untilitiscorrected,pleasenotethattheentry,“Using'dbghelp.dll'version'4.0.5'”,willbesenttotheErrorLogonallSQLServerswithAvailabilityGroupsmonitoredbySentryOne,attheratespecifiedbythecollectioninterval.
UPDATE:CumulativeUpdatepackage6forSQLServer2012SP1addressesthisissue.Oncetheupdatehasbeenapplied,innocuousentriesassociatedwithExtendedEventswillnolongerbeloggedtotheSQLServerErrorLog.
TheenabledstatusandintervalcanbeadjustedatanytimefromtheSentryOneMonitoringService->Settings->EventMonitortab.
ChartingAreaVariouschartsrelatedtoyourmanagedAlwaysOnenvironmentareavailableintheexpandableHistoryAreaoftheAlwaysOnManagementtab.TheChartingareaiscontextawareandwilldisplaychartsbasedontheselectednodeorrow.
Forinstance,fromtheWSFCNodeGroup/Matrixlayout,ifyouselectaPrimaryAvailabilityReplica,chartsfortheKBtoReplicas/secandLogSendQueueKBmetricswillbedisplayed.SelectingaSecondaryAvailabilityReplicawilldisplaychartswiththeKBtoReplicas/secandRecoveryQueueKBmetrics.
IfyouselectaWSFCintheWSFCMemberslayout,pertinentmetricsforeachrespectiveAvailabilityGrouphostedontheWSFCwillbedisplayed,includingKBToReplicas/secandKBfromReplicas/secmetrics.
ErrorLogTheErrorLogallowsyoutoviewanyAlwaysOnHealtheventsthatareclassifiedaserrorsinyourmanagedenvironment.ThislogisequivalenttoviewingAlwaysOnerrorHealthEventsaccessedfromthenativeAlwaysOndashboard,butoffersanumberofadvantages.
TheErrorLogiscontextawareandwilldisplayonlyerrorsrelatedtotheselectednodeorrow.Inlivemode,thisincludesthelasttenminutesofcollecteddata.Updatingthetimerangeonthetoolbarwillchangethisdisplayedrange,allowingyoutoeasilyviewanhistoricalsubsetoferrorsforanyparticularserver.
ReplicaStateChangesTheReplicaStateChangestabdisplaysAlwaysOnHealtheventsthatareclassifiedasReplicaStateChanges.ThislogisequivalenttoviewingAlwaysOnavailability_replica_state_changehealtheventsaccessedfromthenativeAlwaysOndashboard,butoffersanumberofadvantages.
TheReplicaStateChangestabiscontextawareandwilldisplayonlystatechangesrelatedtotheselectednodeorrow.Inlivemode,thisincludesthelasttenminutesofcollecteddata.Updatingthetimerangeonthetoolbarwillchangethisdisplayedrange,allowingyoutoeasilyviewanhistoricalsubsetofstatechangesforanyparticularserver.
ALWAYSONALERTING
SentryOne User Guide | 221
AlwaysOnAlerting
SentryOneAlwaysOnManagementincludestheabilitytoconfigurecustomizablealertsspecifictothestatusandhealthofyourmonitoredAvailabilityGroups.
ThreeFailsafeConditionsareavailable:
SQLAvailabilityGroupFailoverSQLAvailabilityReplicaHealthySQLAvailabilityReplicaUnhealthy
EachoftheseConditionsexposesseveralConditionFilterswhichcanhelpyoutocompletelycustomizeyourdesiredalerts.ConfiguringAlertsSelect the node appropriate to the level you would like to configure the action for in the NavigatorPane and then the Failsafe Actions tab in the Conditions pane. If you do not see the Conditionspane, use the View menu → Failsafe Actions.
Next,youwillwanttoclicktheAddbuttonfoundintheConditionspane.ThiswillopentheSelectActionwindow.ExpandtheapplicableObjectandCondition.Usethecheckbox(s)toselectwhichActionsshouldbetakeninresponsetothisConditionbeingmet.ClicktheOKbutton.
FormoreinformationaboutActionsthatcanbetakenwhenaConditionismet,seetheActionstopic.
CUSTOMIZATIONCustomizingPipeSaturation
Bydefault,theKBToReplica/secthresholdvalueisdynamicandwillbethehighestglobalvalueseenbetweenreplicassincefirstopeningtheAlwaysOntab.TheKBToReplica/secthresholdcanbecustomizedwiththeAlwaysOn.AvailabilityReplicaTransferThresholdtableintheSentryOneDatabase.Itactsasamappingtableallowingyoudefineaspecificvalue/thresholdforthemaximumallowedbytes(KBtoReplica/secThreshold).Bydefault,thetablewillnothaveanyrecords,andinthisstatethethresholdwillbedynamicasmentionedabove.
IfyouwouldliketosetanewKBToReplica/secthresholdvaluespecificforallreplicasinvolvedinaWSFCnode–WSFCnoderelationship,youwouldaddarecordwiththePrimaryNodeName,SecondaryNodeName,andMaxBytesSentToSecondaryPerSecvaluesdefined.TheWSFCnodenamescanbefoundintheAlwaysOn.ClusterNodeandAlwaysOn.AvailabilityReplicatables.
ID PrimaryNodeName SecondaryNodeName MaxBytesSentToSecondaryPerSec
IfyouwouldliketosetanewGlobalKBToReplica/secthresholdvalue,youcanaddarecordwithjustaMaxBytesSentToSecondaryPerSecvalue.Forinstance,ifyouwantedtosetaGlobalvalueof5KB:--Set a Global Value of 5KB
INSERTINTO [SentryOne].[AlwaysOn].[AvailabilityReplicaTransferThreshold](MaxBytesSentToSecondaryPerSec)
SentryOne User Guide | 222
VALUES(5120);
ID PrimaryNodeName SecondaryNodeName MaxBytesSentToSecondaryPerSec
1 Null Null 5120
ThenewGlobalKBToReplica/secthresholdvalueisnow5KB.
IfyouwouldliketosetanewKBToReplica/secthresholdvaluespecifictoaPrimaryReplica-SecondaryReplicarelationship,youwouldaddarecordwiththePrimaryNodeName,SecondaryNodeName,andMaxBytesSentToSecondaryPerSecvaluesdefined.--Set a Value specific to a Relationship
INSERT INTO [SentryOne].[AlwaysOn].[AvailabilityReplicaTransferThreshold](PrimaryNodeName, SecondaryNodeName, MaxBytesSentToSecondaryPerSec)VALUES('MyPrimary','MySecondary',5120);
ID PrimaryNodeName SecondaryNodeName MaxBytesSentToSecondaryPerSec
1 MyPrimary MySecondary 5120
TheKBToReplica/secthresholdvalueforthespecific‘MyPrimary’–‘MySecondary’isnow5KB.Thedefaultglobalvaluewillbeusedforallotherreplicas.
IfyouwouldliketosetanewKBToReplica/secthresholdvalueforaspecificPrimaryReplica,tobeusedwithallofitsSecondaryReplicas,youwouldaddarecordwithjustthePrimaryNodeNameandMaxBytesSentToSecondaryPerSecvaluesdefined.--Set a Value Specific to a Primary Replica to be used with all of its Secondaries
INSERT INTO [SentryOne].[AlwaysOn].[AvailabilityReplicaTransferThreshold](PrimaryNodeName, SecondaryNodeName, MaxBytesSentToSecondaryPerSec)VALUES('MyPrimary',Null,5120);
ID PrimaryNodeName SecondaryNodeName MaxBytesSentToSecondaryPerSec
1 MyPrimary Null 5120
TheKBToReplica/secthresholdvalueforallSecondaryreplicasinarelationshipwiththe‘MyPrimary’replicaisnow5KB.
YoumayaddmultiplerecordstotheAlwaysOn.AvailabilityReplicaTransferThresholdtable,allowingyoutoeasilydefineKBToReplica/secthresholdsspecifictoyourenvironment.
CustomizingPipeandQueueIndicatorcolors
Bydefault,thereisaGlobalRecoveryQueueandLogSendQueueKBThresholdvalueof1MBor1024KB.ThesevaluescanbecustomizedwiththeAlwaysOn.AvailabilityReplicatableintheSentryOneDatabaseusingtheLogSendQueueKBMaxandRecoveryQueueKBMaxcolumns.
SentryOne User Guide | 223
EachReplicainyourmonitoredenvironmenthasanentryintheAlwaysOn.AvailabilityReplicatable.Bydefault,theLogSendQueueKBMaxandRecoveryQueueKBMaxcolumnswillbenull.Whenthisisthecase,thedefaultGlobalvalue(1MB)willbeusedforeachrespectiveQueue.Youcansetthesecolumnstoyourdesiredvalueforeachofyourreplicas.
Forexample,ifIwantedtoupdatetheLogSendQueueKBThresholdvalueformyreplicanamed‘MyPrimary’tobe10MBs,Icouldupdatethetableasfollows:--Set a new Log Send Queue KB Threshold value for my replica ‘MyPrimary’
Update
[SentryOne].[AlwaysOn].[AvailabilityReplica]
set
LogSendQueueKBMax=10240Where
ReplicaServerName='MyPrimary'
Thereplica‘MyPrimary’willnowhaveaLogSendQueueKBThresholdvalueof10240KBor10MB.
ID ReplicaServerName LogSendQueueKBMax RecoveryQueueKBMax
1 MyPrimary 10240 Null
9.7 QueryPlans
Appliesto:SQLSentryandDBSentry
The Query Plans tab lists all plans collected for Top SQL events for the specified date range. Thisprovides a detailed chronology of all query plan changes, so you can go back to any point in timeto see when a plan change may have led to a query performance problem.
The "Show Totals" toolbar button controls whether or not the grid lists plans grouped bystored procedure.
You can jump to this tab by highlighting a range on the dashboard as usual. For example,if you see a spike in parallelism waits on the SQL Server Waits chart, highlight the spikeand select Jump To -> Query Plans, then sort by the "Parallel Operations" column todetermine which queries likely caused the spike. The same approach can be used to findqueries with key or RID lookups since "Lookups" are now shown on the dashboard, aswell as other metrics that correlate such as I/O and table/index scans.
DISPLAY PANESThe filter pane allows you to filter the Query Plans by SQL Server.
Thebottompaneliststherecordsmatchingthecurrentfilters.Therearetwomodesforthispane:DefaultandTotals.The Default mode lists presents all events for the active date range in a standard list format,
SentryOne User Guide | 224
sorted in order by DatabaseName, ObjectName, and StatementCreationTime (descending).
The Totals mode lists presents all events for the active date range in a standard list format, sortedin order by DatabaseName, ObjectName, and PlanCreationTime (descending).
CONTROLSTOP PANE
Filter (minimized by default) - After changing the filter, it is necessary to click the Refreshbutton, or press F5, to apply the filter.
BOTTOM PANETo open the plan in the Query Plan Analysis window, select the View button underthe Plan column (depending on whether the "Show Totals" button is selected, you willneed to expand the Database Name to see the Plan column).
NOTE:Thecontextmenuprovidesanoptionto"Highlightrecompilesinthecurrentdaterange"forastatementbyenablingthecheckbox.
9.8 Indexestab
Appliesto:SQLSentry
INDEXES TAB TheIndexestabdisplaysinformationthathasbeencollectedaboutyourtablesandindexesbySentryOneFragmentationManager.TheIndexestabcanbeusedtohelpyoumakeintelligentdecisionsaboutindexmanagementinyourenvironment:suchaswhenandhowtoperformdefragmentationoperations,whentoadjustfillfactors,orevenwhenanindexdefinitionshouldbechanged.
IndexesTabSections
Section Description
OverviewCharts TheOverviewchartsection,locatedatthetopofthetab,displaysasetofchartswhichcontainaggregatestatisticsaboutalltheindexesanalyzedbyFragmentationManager.
IndexGridView TheIndexGridViewsection,locatedinthemiddleportionofthetab,allowsyoutoviewindexrelatedstatisticsinatabularformat.
DetailsCharts TheDetailchartsection,locatedatthebottomofthetab,displaysasetofchartswhichdisplaystatisticsuniquetotheindividualindex.Selectinganindexinthegridviewareawillupdatethedetaillevelcharts.
Filter
TheFiltersection,locatedatthetopofIndexestab,iscollapsedbydefault.Itcanbeusedtofilterwhatisshowninthegridviewsection.YoucanfilterbySQL ServerorDatabase,andyoucanalsocontrolthenumberofrowsshowninthegridviewwiththeShow Topoption.
YoucaneasilycustomizethelayoutoftheIndexestab.Todoso,rightclickanysectionheadingandchoosetheCustomizeLayoutoption.
OVERVIEWCHARTSTheOverviewChartscontainaggregatestatisticsaboutalloftheindexesanalyzedontheTargetbyFragmentationManager.Forinformationabouteachspecificchartandrelatedmetricsseethesectionsbelow.
TOTALFRAGMENTATIONTheTotalFragmentationchartdisplaysaonceadayaggregationofthefragmentationlevelsforallindexesthathavebeenanalyzedbyFragmentationManager.Eachindex'sfragmentationlevelforthedayissummarized,andtheindexesarenextgroupedbyrange;<10%,10-20%,20-30%,and>30%.
TheY-axisnumbersrepresentthetotalnumberofindexesbelongingtotheTargetthathavebeenanalyzedbyFragmentationManager.Whenyouselectarangeonthechart,theindexeswhichfallintothecorrespondingrangewillalsobehighlightedintheindexgridview.
TOTALSPACEUSAGE(MB)TheTotalSpaceUsagechartsummarizesdiskusageforeachindexwhichhashaddatacollectedoverthespecifiedtimeframe.Asa
SentryOne User Guide | 225
reminder,youcanadjusttheminimumandmaximumindexsizecollectionthresholdsintheDatabaseSourceSettings.
ThecharthasindividualrepresentationsforUnusedspace,Usedspace,andEmptyspace.Unusedspaceisrepresentedatthebottomofthechart,Usedspaceinthemiddle,andEmptyspaceatthetop.Seethetablebelowfortheexplanationsofeachmetric.
Metric Description
Unused Unusedspaceistheamountofdiskspacewhichhasbeenallocatedforindexpages,butdoesnotcontainanyindexpages.
Used Usedspaceistheamountofdiskspacewhichhasbeenallocatedforindexpages,anddoescontainindexpages.
EmptyThisistheamountofemptyorunfilledspace,withinanyindexpages.Lackofpagefullnesscouldindicatethatindexfillfactorsneedtobeadjusted.
TOTALBUFFERUSAGE(MB)TheTotalBufferUsagechartsummarizesSQLServerbufferusage,duringthespecifiedtimerange,foreachindexthathashaddatacollected.ThereareindividualrepresentationsofUsedspaceandEmptyspace.
Metric Description
Used RepresentsthesizeoftheUsedIndexpagescontainedwithintheSQLServerBufferpool.
Empty
Representstheamountofemptyorunfilledspace,withinthoseindexpagesthatresideintheSQLServerBufferPool.
TheEmptyBuffermetriccanbedirectlymappedtotheEmptydiskmetric.Thisisbecauseapagethatisonly50%fullondiskwillalsobeonly50%fullwhenitiscontainedintheBuffer.
DETAILCHARTSTheDetailChartscontainstatisticsaboutindividualindexesanalyzedontheTarget.
INDEXFRAGMENTATIONTheIndexFragmentationchartshowsthefragmentationpercentageoftheselectedindex,measuredduringeachscheduledFragmentationScan.Ifareorganizationorrebuildoperationwasperformedontheindex,andyouhavetheRun Post-defrag Analysissettingenabled,youwillalsoseedatapointswhichrepresentthefragmentationpercentaftertherebuildorreorganizationoperationiscomplete.Thischartcanbeusedtohelpyoudeterminewhatkindoffragmentationmanagementscheduleshouldbeappliedtotheindex.
Asmentioned,eachdatapointonthechartrepresentsaFragmentationManageroperation.Youmaydouble-clickonanydatapointtoopentheEventCalendarfortheselectedoperation.ThebackgroundcolorsofthechartcorrespondtothesamerangesandcolorsasfoundintheTotalFragmentationchart.
INDEXSPACEUSAGETheIndexSpaceUsagechartshowshowmuchoftheselectedindexwaslocatedondiskandinbuffer,overtheselectedtimeframe.Itcanalsogiveyouanideaabouthowmuchdiskandbufferspaceisbeingwastedbytheindex,duetonon-fullpages.
Metric Description
UnusedDisk Theamountofdiskspacewhichhasbeenallocatedforindexpages,butdoesnotcontainindexpages.
UsedDisk Usedspaceistheamountofdiskspacewhichhasbeenallocatedforindexpages,anddoesactuallycontainindexpages.
EmptyDisk Thisistheamountofemptyorunfilledspace,withinanyoftheIndexpages.
EmptyBufferRepresentstheamountofdiskspacetakenupbyemptyorunfilledspace,withinthoseindexpages,thatresideintheSQLServerBufferPool.
UsedBufferUsedBufferrepresentsthesizeoftheUsedIndexpagescontainedwithintheSQLServerBufferpoolforthespecifiedindex.
INDEXACTIVITYTheIndexActivitychartgivesyouaviewofhowtheselectedindexisbeingusedoverthespecifiedtimeframe.Youcanusethischarttohelpidentifybothunusedindexesandthecostofyourheavilyusedindexes.
Metric Description
UserScans Thenumberofscanoperationsontheindexcausedbyuseractivity.
UserSeeks Thenumberofseekoperationsontheindexcausedbyuseractivity.
SentryOne User Guide | 226
UserLookups
Thenumberoflookupscausedbyuseractivity.
Foraclusteredindex,thisnumberrepresentsthenumberofkeylookupsdoneagainsttheindex.N/Afornon-clusteredindexForaheap,thisnumberindicatesthenumberofRIDlookups.
UserUpdates
Thenumberofupdatescausedbyuseractivity.Indicatesthelevelofmaintenanceontheindexcausedbyinsert,update,ordeleteoperationsdonetotheunderlyingtable.
SystemScans Thenumberofscanoperationsontheindexduetosystemqueries.
ForgeneralinformationabouttheIndexusagestatisticsseethesys.dm_db_index_usage_statsMSDNtopic.
INDEXGRIDVIEWTheIndexGridView,locatedinthecenteroftheIndexestab,containsvariousstatisticsaboutyourindividualindexes.WhenyouselectanindexinthegridviewtheDetailindexchartswillbeupdatedwithinformationspecifictothatindex.
Youcanapplyfiltersandorderthedatabyvariouscolumns.Toapplyafiltertothegridview,mouseoveracolumnandselectthefiltersymbollocatedintheupperrighthandcornerofthecolumnheader.Afteryouapplyafilter,thefiltersymbolwillpersistinthecolumn'sheader,allowingyoutoeasilyseewhichcolumnshavefiltersapplied.Additionally,thecolumnnameandanyassociatedfilteredtextwillbedisplayedatthebottomofthegridview.UsetheXbuttonlocatedbesidethefilteredtexttoremovethefilter,orusethedropdownboxtocyclethroughfilteredcolumns.YoucanalsoedittheappliedfilterswiththeEdit Filter buttonfoundinthebottomofthegridview.Filterscanalsobeappliedthroughtherightclickcontextmenuofanycolumn.
TheinformationdisplayedintheOverviewChartsisnoteffectedbyfiltersappliedintheGridview.
Toorderthegridviewbyacolumn'svalue,simplyselectthecolumnheader.Anarrowwillbeshowninthecolumn'sheaderindicatingthatthegridviewisbeingorderedbythatcolumn.Cyclethroughascendinganddescendingorderbyselectingthecolumn'sheader.
IndexGridViewColumns
Column Description Notes
SQLServer ThenameoftheSQLServerwheretheindexresides.
Database ThenameoftheDatabasewheretheindexresides
Table ThenameofTablewheretheindexresides
Index ThenameoftheIndex.
Type
TheTypeofIndex.Heap,ClusteredIndex,Non-clusteredIndex,PrimaryIndex,SpatialIndex,orXMLIndex.ForgeneralinformationaboutthedifferenttypesofindexesseetheTypesofIndexesMSDNarticle.
PrimaryKey Specifiesiftheindexispartofaprimarykeyconstraint.
Unique Specifiesiftheindexispartofauniqueconstraint.
DataSpaceType
SpecifiestheDataSpaceType.
FG-FileGroup
PS-PartitionScheme
FD-Filestreamdatafilegroup
Size(MB) Theamountofdiskspacerepresentedinmegabytestakenupbytheindex.
Used(MB) Usedspaceistheamountofdiskspacewhichhasbeenallocatedforindexpages,anddoescontainindexpages.
Used(MB)inBufferRepresentsthesizeoftheUsedIndexpagescontainedwithintheSQLServerBufferpool.
Empty(MB)inBuffer Representstheamountofemptyorunfilledspace,withinthoseindexpagesthatresideintheSQLServerBufferPool.
RowCount Thenumberofrowsofdatabelongingtotheindex. NotavailableforLimitedScanmode.
Avg%Fragmented Theaveragefragmentationpercentageoftheindexasrecordedduringthelastfragmentationscan. NotavailablewithaSampledScanforheaps.
Avg%PageSpaceUsedTheaveragepercentageofavailabledatastoragespaceusedinallthepagesoftheselectedindex.Thisindicatespagefullness.
NotavailableforLimitedScanmode.
FillFactor TheFillFactorsetfortheselectedindex.FormoreInformationseetheSpecifyFillFactorforanIndexMSDNtopic.
Metric Description
SentryOne User Guide | 227
UserScansDeltaThenumberofscanoperationsontheindexcausedbyuseractivitysincethelastsampletime(every15minutes).
Status Thecurrentstatusofanydefragmentationoperationsbeingperformedontheselectedindex.
StartTime Thestarttimeofthelastdefragmentationoperationthatwasperformedontheselectedindex.
EndTime Theendtimeofthelastdefragmentationoperationthatwasperformedontheselectedindex.
Duration Thedurationofthelastdefragmentationoperationthatwasperformedontheselectedindex.
LastMessageIndicatesthelastdefragmentationoperationrelatedtothisindex,includingthelastdefragmentationmethodusedontheselectedindex.
AvgRecordSize(bytes) Indicatestheaveragerecordsizeinbytesfortheselectedindex. NotavailableforLimitedScanmode.
CompressedPages Thenumberofcompressedpagesfortheselectedindex.
EnabledIndicatesiftheIndexhasbeenmadeavailable.SetintheindexpropertiesofthenativeSQLServertools.
ForwardedRecords Representsthenumberofrecordsinaheapthathaveforwardpointerstoanotherdatalocation.Forwardpointerscanbeaddedduringupdates,whenthereisnotenoughroomtostorethenewrowintheoriginallocation.
OnlyavailableforIndexType:Heap.
NotavailablewithaLimitedScan.
GhostRecords
Numberofghostrecordsreadyforremovalbytheghostcleanuptaskintheallocationunit.Ghostrecordsarerecordsthathavebeenlogicallydeletedfromapagebutnotphysicallydeleted.
FormoreinformationaboutGhostRecordsseethesetwoSQLSkillsarticlesbyPaulRandal:
InsidetheStorageEngine:Ghostcleanupindepth
Ghostcleanupredux
NotavailablewithaLimitedScan.
Pages Thetotalnumberofindexpagesfortheselectedindex.
UnusedDisk(MB) Theamountofdiskspacewhichhasbeenallocatedforindexpages,butdoesnotcontainindexpages.
Used% Thepercentofdiskspacewhichhasbeenallocatedforindexpagesandcontainsindexpages.
VersionGhostRecords Numberofghostrecordsretainedbyanoutstandingsnapshotisolationtransactioninanallocationunit. NotavailablewithaLimitedScan.
LOBData SpecifiesiftheindexcontainsoneormoreLOBdatatype.
INDEXGRIDVIEWCONTEXTMENUCOMMANDSAsapplicablethefollowingcommandsareavailablethroughtheright-clickcontextmenuoftheIndexGridandTreeView.
Command Description
IndexProperties UsetheIndexPropertiescommandtoviewtheIndexPropertiesoftheselectedindexinthenativeSQLServertools.
AnalyzeFragmentationNow
SelectedyourdesiredmodetoperformanFragmentationanalysisontheselecteditem.
Limitedmodeisthefastestmodeandscansthesmallestnumberofpages.Foranindex,onlytheparent-levelpagesoftheB-treeareScanned.Foraheap,onlytheassociatedPFSandIAMpagesareexamined;thedatapagesoftheheaparenotscanned.
Samplemodereturnsstatisticsbasedona1percentsampleofallthepagesintheindexorheap.Iftheindexorheaphasfewerthan10,000pages,DetailedmodeisusedinsteadofSampled.
Detailmodescansallpagesandreturnsallstatistics.
ForgeneralinformationaboutScanModesseethisMSDNarticle.
DefragmentNow
UsetheRebuild(offline),Rebuild(online),orReorganizecommandtoimmediatelyperformtheselectedoperation.
ForgeneralinformationaboutreorganizingandrebuildingindexesseethisMSDNarticle.
IndexeswhichcontainLOBcolumnscannotbeRebuiltonline.WhentheDefragmentNow->Rebuild(online)commandisusedonindexeswhichcontainLOBcolumnsanofflinerebuildwillbeperformed.
ExcludeIndexfromAutomatedDefragorAnalysis
TheExcludeIndexfromAutomatedDefragorAnalysiswillexcludetheselectedindexfromfutureFragmentationManageroperations.Afteranindexhasbeenexcludeditwillbedisplayedwithagraybackgroundinthedatagrid.
ResetFragmentationStats TheResetFragmentationStatscommandwillresetstatisticsfortheselecteditem,includingtheAvg%Fragmentedstatistic.
TheJumpToNavigatorcommandwillopentheselecteditemintheNavigatorpane.
Column Description Notes
SentryOne User Guide | 228
JumpTo UsetheJumpToCalendarcommandtoopentheCalendarforthelastAnalysisorDefragmentationEventstarttime.
Copy UsetheCopycommandtocopytheselectedroworcell.
Command Description
9.8.1 FragmentationManager
Heavilyfragmentedindexescandegradetheperformanceofyourdatabaseandtheapplicationsrunningonit.Indexfragmentationcanberesolvedbyreorganizingorrebuildinganindex.FragmentationManagercanautomaticallycollecttableandindexinformation,analyzethedata,taketheappropriatereorganizationorrebuildactions,andthenperformpostdefragmentationanalysis.
FragmentationManagerhasadedicatedtabinSQLSentry,Indexes.TheIndexestabdisplaysindexrelatedstatisticsandcharts,fromtheTargetleveldowntotheindividualindexlevel,givingyouacompleteviewofthefragmentationlevelsonyourserver.Havingthisinformationallowsyoutomakeintelligentdecisionsaboutindexmanagementinyourenvironment;suchaswhenandhowtoperformdefragmentationoperations,whentoadjustfillfactors,orevenwhenanindexdefinitionshouldbechanged.
DifferentschedulescanbesetfordifferentInstancesanddatabases,evendowntotheindividualtableorindexlevel,allowingyoucompletegranularcontroloveranydefragmentationactions.Additionally,youhavetheabilitytosetspecificschedulesforrebuildsorreorganizationsexplicitly.SeveraladditionalsettingsareavailabletohelpyoufinetunetheactionsSentryOnetakes,including:
Theabilitytosetthescanlevelormodethatisusedtoobtainfragmentationstatistics.Theabilitytosetbothminimumandmaximumindexsizethresholdsforthecollectionoffragmentationdata.Theabilitytosetreorganizationandrebuildfragmentationthresholdpercentages.AllindexdefragmentationsettingsworkwithinthenormalSentryOnehierarchy,sosettingscanbeconfiguredatonelevelandbeautomaticallyinheritedbyobjectsbelowit,allowingforeasyautomationwithinyourenvironment.
Foracompleteexplanationofalltheavailablesettings,seetheFragmentationManagerSettingssectionbelow.
ENABLINGFRAGMENTATIONMANAGERYoucanenableFragmentationManagerthroughtheright-clickcontextmenuofanyInstanceorbyopeningtheIndexestabofSQLSentryandselectingtheEnableNowbutton.ThefirsttimeyouenableFragmentationManageraWizardwillbedisplayed.
Note:AllFragmentationSettingswillbecomeavailablethroughtheSettingspaneafterrunningtheWizard.
FragmentationManagerWizardOptions
Option Description
Collecttableandindexsizeinformation ThebaselevelofFragmentationManagement.Every15minutesSentryOnewillcollecttableandindexsizeinformationforthetop500indexesineachdatabase.
Collectbufferdatawhenbuffersize>8GB
DeterminesifSentryOnewillcollectBufferdatawhenbuffersizeis>8GB.
SeetheDatabase Source SettingCollectBufferDatawhenBuffer>8GBdescriptionforacompleteexplanation.
Retainhistoricaldata[FM] TableandIndexhistoricaldatawillberetained.
Analyzefragmentation
SentryOnewillanalyzeindexfragmentationstatisticsbasedonthescheduleyouspecifyonthenextscreenanddisplaythosestatisticsontheIndexestabofSQLSentry.
TheLimitedModewillbeusedforobtainingfragmentationstatistics.TheFragmentationScanModemaybechangedafterthewizardcompletesfromtheIndexDefragmentationSettings.
Defragmentindexesoverspecifiedthresholds[FM]
SentryOnewillperformdefragmentationoperationsbasedonthescheduleyouspecifyinthenextscreen.
Selectyourdesiredreorganizationandrebuildthresholdsfordefragmentationoperations.
Reanalyzeindexesafterdefragmentation SentryOnewillreanalyzefragmentationstatisticsafteranydefragmentationoperationsareperformed.
SelectSchedule
Toselectascheduletobeusedforanalysisand/ordefragmentation,youmayeitherchooseapre-existingschedule,orusethe
SentryOne User Guide | 229
Newcommandtocreateanewschedule.SelectNexttoconfirmyoursettingsandthenFinishtocompletetheWizard.
FRAGMENTATIONMANAGERRELATEDSETTINGSTherearetwogroupsofsettingsrelevanttoFragmentationManager.DatabaseSourceSettingsareusedtoconfigurethegeneralcollectionoftableandindexinformation,includingsizecollectionthresholds,buffercollectionthresholds,andindexpartitionoptions.IndexDefragmentationSettingsareusedtoconfigurethedefragmentationandanalysisoperations,includingscheduling,andsettingindexreorganizationandrebuildthresholds.
DATABASESOURCESETTINGSSynchronization Description DefaultValue
InheritFromParentSpecifieswhethersettingsinthisgrouparebeinginherited.Formoreinformationaboutinheritance,seethehierarchychartintheAlertingandResponseSystemtopic. True
MaximumRowstoSynchronize Maximumrowsofhistoricaleventdatatocollectfromthissource. 5000
GeneralSettings Description DefaultValue
InheritFromParent Specifieswhethersettingsinthisgrouparebeinginherited.Formoreinformationaboutinheritance,seethehierarchychartintheAlertingandResponseSystemtopic. True
EnableTable/IndexDataCollection
Specifieswhethertableandindexcollectionisenabled.Whenenabledevery15minutesSentryOnewillcollecttableandindexsizeinformation.
Note:ThisSettingmustbeTrueinordertoperformAnalysisoperationsandAutomatedDefragmentationoperations.
True
MaxPartitionstocollectperDatabase Themaximumnumberofpartitionsforwhichinformationwillbecollectedperdatabase. 500
MinIndexSize(MB)toCollectFragmentationData
SpecifieshowlargeanIndexmustbebeforestatisticsarecapturedaboutit.Ifyoukeepthedefaultvalueof10MBanyindexeswhicharesmallerthan10MBwillnotbeanalyzedorconsideredfordefragmentationoperations.
10MB
MaxIndexSize(MB)toCollectFragmentationData Setsthemaximumsizeanindexcanbe,andstillbeconsideredfordefragmentationoperations. 50000MB
CollectBufferDatawhenBuffer>8GB
Specifieswhethertocollectbufferdatawhenbuffersizeis>8GB.
Collectingdetailedbufferinformationisinherentlyalowoverheadprocess.However,sinceittakesapproximately1secondperGBofbuffer,onlargerbufferstheassociatedquerycantakesometimetocomplete,whichmaycauseittoappearinTopSQLand/orgenerateassociatedalerts.
Itisgenerallysafetoenablethissetting,sinceSentryOneensuresthatthetotaltimespentperdaycollectingbufferdatawillberoughlythesameregardlessofbuffersize,andcollectiononlyoccurswhenbufferhaschanged.
Whencollectingbufferdata,SentryOneusesavariablecollectionfrequency,whichisbasedonthesizeofthebuffer.Thechartbelowshowsthevariablecollectionfrequencyalongwiththeapproximatetimeittakestocollectbufferdatafordifferentbuffersizes.
MaximumBufferDataCollectionFrequency
BufferSize
(GB)
Collection
Frequency(Min)
Timeto
Collect(Sec)
Timeto
Collect(Min)
4 15 4 0.1
8 15 8 0.1
16 30 16 0.3
32 60 32 0.5
64 120 64 1.1
96 240 96 1.6
128 240 128 2.1
256 480 256 4.3
<notspecified>
SetwithWizard
SentryOne User Guide | 230
384 720 384 6.4
512 1440 512 8.5
768 1440 768 12.8
1024 2880 1024 17.1
INDEXDEFRAGMENTATIONSETTINGSAfteryouenableFragmentationManagertheIndex Defragmentation SettingscanbeaccessedthroughtheSettingspane.IndexDefragmentation Settingscanbeconfiguredatthefollowinglevels:Global(AllTargets),Sites,TargetGroup,Target,Instance,Database,Table,orattheindividualindex.
Forinstance,ifyouwantedtoconfiguretheIndex Defragmentation SettingsforaspecificInstance,firstselecttheInstanceintheNavigator,andthenopentheSettingspane.IfyoudonotseetheSettingspane,usetheViewMenu(View->Settings).Fromhereusethedrop-downmenuandchooseIndexDefragmentation.
BelowyouwillfindatablewithadescriptionofthevariousIndex Defragmentation Settingsandthedefaultvalues.
GeneralDefragSettings Description DefaultValue
InheritFromParent Specifieswhethersettingsinthisgrouparebeinginherited.Formoreinformationaboutinheritance,seethehierarchychartintheAlertingandResponseSystemtopic. False
PrimarySchedule
Thescheduleonwhichindexanalysisand/ordefragwillbeperformed,accordingtotheconfiguredreorgandrebuildthresholds.FormoreinformationaboutSchedules,seetheSchedulestopic.
<notspecified>
SetwithWizard
OperationType SpecifieswhetheranalysisonlyoranalysisanddefragoperationsoccurunderthePrimaryschedule. AnalyzeOnly
ReanalyzeIndexesafterDefrag Specifieswhethertorunthefragmentationanalysisagainafteranyscheduleddefrag. False
FragmentationScanMode
TheScanmodeusedforobtainingfragmentationstatistics.
Limitedmodeisthefastestmodeandscansthesmallestnumberofpages.Foranindex,onlytheparent-levelpagesoftheB-treeareScanned.Foraheap,onlytheassociatedPFSandIAMpagesareexamined;thedatapagesoftheheaparenotscanned.
Samplemodereturnsstatisticsbasedona1percentsampleofallthepagesintheindexorheap.Iftheindexorheaphasfewerthan10,000pages,DetailedmodeisusedinsteadofSampled.
Detailmodescansallpagesandreturnsallstatistics.
ForgeneralinformationaboutScanModesseethisMSDNarticle.
Limited
MaximumConcurrentOperationsSpecifiesthemaximumnumberofconcurrentoperations.Operationsaredefinedasananalysis,rebuild,orreorganization.Thissettingiscappedat5. 1
DelayBetweenDefragOperations WhenMaximumConcurrentOperationsissetto1,youcanspecifyadelaybetweendefragoperationstopreventsend/redoqueueoverloadwhenavailabilitygroupsormirroringareinuse. 30seconds
MaximumDuration
Thissetsthemaximumallowedruntimeforthedefragmentationprocess.
Ifthemaximumdurationismetduringarebuildoperationtherebuildwillstillbecompleted.Ifthemaximumdurationismetduringareorganizationoperationthereorganizationwillbestoppedandstartedagainduringthenextscheduledcycle.
2hours
Partitions
Partitionstoincludeintherebuild.Thisoptionisapplicableforindexesthathaveaslidingwindowspartitionscheme.FormoreinformationaboutpartitionschemesseethisMSDNarticle.
All-Allpartitionsbelongingtotheindexwhichmeetthedefragmentationcriteriawillbeeitherrebuiltorreorganized.
MaxOnly-Ifthemaximumnumberedpartitionoftheindexmeetsthedefragmentationcriteriaitwillberebuiltorreorganized.
ExcludeMax-Allpartitionswhichmeetthedefragmentationcriteria,excludingthemaximumnumberedpartition,willbeeitherrebuiltorreorganized.
Note:OnlinerebuildsforpartitionedindexescanonlybeperformedifthePartitionssettingis‘All’andallpartitionsintheindexmeetthedefragmentationcriteria.IftheabovecriteriaisnotmetanOfflineRebuildwillbe
AllPartitions
Synchronization Description DefaultValue
SentryOne User Guide | 231
performedinstead.
IndexReorgSettings Description DefaultValue
InheritFromParent Specifieswhethersettingsinthisgrouparebeinginherited.Formoreinformationaboutinheritance,seethehierarchychartintheAlertingandResponseSystemtopic. True
ReorgThreshold%
Setsthefragmentationthresholdpercentatwhichindexeswillbereorganized.Ifthedefaultthresholdof10%iskept,indexeswhichhaveanindexfragmentationpercentagebelow10%,asdeterminedduringtheFragmentationScan,willnotbereorganized.Indexeswithafragmentationpercentexceding10%willbereorganized.ForgeneralinformationaboutreorganizingindexesseethisMSDNarticle.
10%
ReorgSchedule Dedicatedscheduleonwhichreorgsonlywillbeperformed,accordingtothereorgthreshold.Rebuildswillnotbeperformedeveniftherebuildthresholdhadbeenexceeded,butinsteadbereorganized.
<notspecified>
IndexRebuildSettings Description DefaultValue
InheritFromParent Specifieswhethersettingsinthisgrouparebeinginherited.Formoreinformationaboutinheritance,seethehierarchychartintheAlertingandResponseSystemtopic. True
RebuildThreshold%Setsthefragmentationthreshold%atwhichindexeswillberebuilt.Ifthedefaultvalueof30%iskept,onlyindexeswhichhaveanindexfragmentationpercentof30%orgreater,asdeterminedduringtheFragmentationScanwillberebuilt.ForgeneralinformationaboutrebuildingindexesseethisMSDNarticle.
30%
RebuildSchedule Dedicatedscheduleonwhichrebuildsonly(onlineoroffline)willbeperformed,accordingtotherebuildthreshold. <notspecified>
OfflineRebuildWindow Ifanofflinerebuildwillbeperformed,onlystarttheofflinerebuildduringthespecifiedwindow. <notspecified>
SortintempdbSpecifiesiftempdbistobeusedforsortingduringrebuildoperations.ForgeneralinformationabouttempdbandIndexcreationseethisMSDNarticle. False
UseOnlineRebuild(EnterpriseOnly) Determinesiftheindexrebuildoperationswillbeperformedonline.ForgeneralinformationaboutperformingindexoperationsonlineseethisMSDNarticle. True
MAXDOP(EnterpriseOnly)
Determinesthemaxdegreeofparallelism(MAXDOP)thatwillbeusedwhenrebuildingtheindex.Thedefaultvalueis0,whichallowstheservertodeterminethenumberofCPUsthatwillbeused.ForgeneralinformationaboutconfiguringParallelIndexOperationsseethisMSDNarticle.
0
NOTE:Indexesthatcannotberebuiltonline,suchasthosewithLOBcolumns,willneverbedefragmentedbyaRebuildscheduleifUseOnlineRebuildissettoTrueexceptwithinaspecifiedOfflineRebuildWindow.Otherwise,theywillonlybeanalyzed.
MANUALFRAGMENTATIONOPERATIONSFragmentationoperationscanalsobeinitiatedmanually.WithintheNavigatoryoucanusetheright-clickcontextmenuofanydatabase,table,orindextoinitiatefragmentationoperations,includinganalysis,reorganizations,orrebuilds.
ManualfragmentationoperationscanalsobeinitiatedwithintheIndexestab.FromtheGrid/Treeviewfoundinthecenterofthescreen,usethecontextmenuofanydatabase,table,orindextoaccessfragmentationoperations.
FRAGMENTATIONALERTCONDITIONSThefollowingfragmentationrelatedConditionsareavailabletoconfigureActionsfor.
DefragmentationCompletedDefragmentationStartedDefragmentationFailure
ToconfigureaFragmentationrelatedConditionfirstselectthenodeappropriatetothelevelyouwouldliketoconfiguretheActionforintheNavigatorPaneandthenopentheGeneralActionssectionintheConditionspane.IfyoudonotseetheConditionspaneusetheViewmenu→Conditions.
NextyouwillwanttoclicktheAddbuttonfoundintheConditionspane.ThiswillopentheActionsSelectorwindow.ExpandtheIndexActionsandthentheappropriateCondition.Usethecheckbox(s)toselectwhichActionsshouldbetakeninresponsetothisConditionbeingmet.ClicktheOKbutton.
FormoreinformationaboutActionsthatcanbetakenwhenaConditionismetseetheActionstopic.
INDEXESTABForinformationaboutthechartsandstatisticsdisplayedintheIndexestabseetheIndexestopic.
DISKSPACEUSAGEBANDByenablingFragmentationManager,thefunctionalityoftheDiskSpacetabisalsoenhancedbyprovidingadditionalinformationregardingthespaceusageofindexes.Formoreinformation,pleaserefertotheDiskSpacetopic.
GeneralDefragSettings Description DefaultValue
SentryOne User Guide | 232
9.9 SSASUsageTotals
Appliesto:BISentry
TheSSASUsageTotalstabprovidesinformationthatcanbeusedtodeterminewhatactionstotakebasedonactivitylevels.Theinformationisdividedintothreedifferentgroups:
Attributes:
Thistabisusedtoseewhichattributecombinationsarehitthemosttodetermineifcreatinganaggregationwouldimproveperformance.
Aggregations:
Thistabshowstheaggregationsthatarebeingused.
Partitions:
ThePartitiontabshowswhichpartitionsarebeingreadthemost.Display Panes
TheFilterpaneprovidesaseriesoffiltersandcontrolsforspecifyingwhichrecordstodisplay.Theavailablefiltersare:
SQLServersDatabasesCubesMeasureGroups
CONTROLSFilter(minimizedbydefault)-Afterchanginganyofthefilters,itisnecessarytoclicktheRefreshbutton,orpressF5,toapplythefilter.Clickonacombinationofitemsinanyoftheliststosetthefilters.Thedefaultfilteristodisplayallrecords.Toselectmorethanoneiteminalist,useshift-clickorctrl-click.ShowTop-Dependingonthelengthofthedisplayedinterval,youmayhavealotofdatatoworkwith.Thissettingcontrolshowmanyoftherowsareactuallyretrieved.
9.10 BlockingSQL
Appliesto:SQLSentry
TheBlockingSQLtabdisplaysallSQLServerblocksthatoccurredduringtheactivedaterange,whichmeettheMinimumBlockDuration.Eachblockisdisplayedinahierarchicalformat,showingtherelationshipsbetweenallblockingandblockedSPIDsinablockingchain.
BLOCKINGSQLCOLLECTIONBlockingSQLcollectioniscontrolledwiththeBlockingSQLSourceSettings.TheMinimumBlockDurationsettingdetermineshowlongablockmustexistbeforeinformationiscollectedonit.Bydefaultthisis15seconds.YoumayadjustBlockingCollectionasdesiredthroughtheSettingspane(Viewmenu→Settings).
SentryOne User Guide | 233
ExpandforBlockingSettingsExamples
Ifyouwantedtochangeblockingcollectionto20secondsGlobally.
1. SelecttheSharedGroupsnodeintheNavigatorPane(Globalcontext).2. IntheSettingspane,usethetopdrop-downlistandselectSQLServerSettings.3. Usetheseconddrop-downlisttoselectBlockingSQLSource.YoushouldnowseetheBlockingSourceSettingsthatarebeingappliedGlobally.
4. ChangetheMinimumBlockDurationSettingto20seconds,itwillbesavedautomatically.
IfyouwantedtochangeblockingcollectionforanindividualInstance:
1. SelectthedesiredInstancenodeintheNavigatorPane.2. IntheSettingspane,usethedrop-downlistandselectBlockingSQLSource.3. YoushouldnowseetheBlockingSQLSourceSettingswhichareconfiguredfortheInstance.ChangetheInheritFromParentSettingtoFalse.
4. ChangetheMinimumBlockDurationSettingtoyourdesiredvalue,itwillbesavedautomatically.
BLOCKINGSQLRETENTIONBydefault,PerformanceAnalysisBlockingSQL,TopSQL,andDeadlockdataisretainedfor15days.ThisiscontrolledwiththeKeepPerformanceHistoryForSettingfoundontheStoragetaboftheGlobalSettings(Navigatorpane→Configuration→GlobalSettings→Storagetab).FormoreinformationaboutretentionseetheDataCapacityPlanningKBarticle.
BLOCKINGSQLALERTINGYoumayconfigureActionsinresponsetoanumberofBlockingSQLConditions.TheSQLServer:BlockingSQLConditionoccurseachtimeablockiscollected,andthereforehasadirectcorrelationtotheBlockingSQLSourcecollectionSettings.YoumayalsoconfigureanActioninresponsetotheSQLServer:BlockingSQL:OutputContentMatch(OCM)Condition.TheOCMConditioncanbeusefulinnarrowingthenotificationsyouseeconcerningblocking.
YoumaywanttoconsiderapplyingaResponseRulesettoanyActionyouconfigurewiththeSQLServer:BlockingSQLCondition.ResponseRulesetsallowyoutocontrolhowoftenActionsaretakeninresponsetoConditions.Inthiscase,youcouldapplyaResponseRulesettolimittheBlockingalertsyoureceive,whilestillretainingBlockinginformationontheBlockingSQLtab.
SQLTEXTDATALENGTHBydefaulttextdataforcapturedeventsistruncatedat10,000characters.YoucanchangethismaximumlengthintheMonitoringServiceSettings(Navigatorpane→Configuration→GlobalSettings→Advancedtab).
DISPLAY/CONTROLS
TOOLBARTheBlockingSQLtabhastwomodes,RealTimeandHistory.Theactivemodeiscontrolledthroughthetoolbar.Whentheauto-refreshPlaybuttonisselected,thetabentersRealTimemode.InRealTimemode,anyblockingSQLwhichhappenedwithinthelast10minuteswillbe
SentryOne User Guide | 234
displayed.
Whentheauto-refreshPausebuttonisselected,thetabgoesintoHistorymode.SelectatimerangeandthenusetheGotoolbarbuttontoviewblockswhichhappenedduringthattimeperiod.Alternatively,usetheJumpToLastBlockbuttontonavigatetothelastblock.
FILTERThetoppaneprovidesclientfiltersforspecifyingwhichrecordstodisplayforthedefinedinterval.
Note:TheFilterpaneisforClientsidefilteringanddoesnotimpactwhatisactuallycollected.SeetheBlockingSQLCollectionsectionofthistopicforcollectionrelatedinformation.
Afterchanginganyofthefilters,itisnecessarytoclicktheRefreshbutton,orpressF5,toapplythefilter.Toselectmorethanoneiteminalist,useshift-clickorctrl-click.Theavailablefiltersare:
SQLServersApplicationsDatabasesHostsWaitResources
ShowTop-Dependingonthelengthofthedisplayedinterval,youmayhavealotofdatatoworkwith.Thissettingcontrolshowmanyoftherowsareactuallyretrieved.
BLOCKINGSQLGRIDVIEWEachblockisdisplayedinahierarchicalformat,showingtherelationshipsbetweenallblockingandblockedSPIDsinablockingchain.
Theheadoftheblockingchainwillbethetopnodeinthehierarchy.Thiswillcontaintheblockingstatement.Itwillbedisplayedwithanorangenodeifthestatementisstillrunning,andagreennodeonceithascompleted.Sub-nodesinthechainarethestatementswhicharebeingblocked,andtheyaredisplayedwitharednode.Anysubsequentstatementswhicharebeingblockedwillbenestedbeneath,givingyouacompletepictureoftheblockingchain
Auniquerecordisshownforeachversionofablockingchain,denotedbytheVersioncolumn.Anewrecordiscreatedeverytimetheblockingchainchanges,whichmeansthatablockedSPIDwaseitheraddedorremovedfromthechainbetweenpollingintervals.Forsomeblocksthismayhappenfrequentlycausingmultiplerecordstobecreated,whileothersmaynotchangeatallforthedurationoftheblock.ThepollingintervalforblocksisdeterminedbytheEventMonitorPollingInterval(Navigatorpane→MonitoringServicenode→Settings→EventMonitortab).
TEXTDATAThebottompaneshowstheTSQLtextdataforthecurrentlyhighlightedBlockingSQLrecord.NotethatforsomeSPIDsthismaybeblankifSentryOnewasunabletocollecttheTSQLduetotimingissues.
ADDITIONALOPTIONSThereareadditionaloptionsavailablethroughtheright-clickcontextmenu,including:
JumptoCalendar-gotothateventontheEventCalendar(requiresservertobewatchedwithEM).
SentryOne User Guide | 235
JumptoDashboard-openthePerformanceAnalysisDashboardwiththeselectedBlockingeventoverlaidoneachofthecharts.JumptoTopSQL-opentheTopSQLtabhighlightingthequeryinvolvedintheblockingevent.Right-clickingonablockingrecordpresentsacontextmenuthatwillallowyoutojumptotheinstanceonthecalendarorkilltheprocessassociatedwiththeblockingevent.UsetheClearSortcommandavailablethroughthecontextmenutoremoveanygridorderings.Additionalcontextmenuoptionsincludetheabilitytoexpandandcollapseindividualtreesoralloftherecordsinthegridview.
BLOCKINGSQLMETRICSName Description
SPID[ecid] ThesessionprocessIDoftheassociatedblocked/blockingprocess.
Version
Auniquerecordisshownforeachversionofablockingchain,denotedbytheVersioncolumn.Anewrecordiscreatedeachtimetheblockingchainchanges,whichmeansthatablockedSPIDwaseitheraddedorremovedfromthechainbetweenpollingintervals.Forsomeblocksthismayhappenfrequentlycausingmultiplerecordstobecreated,whileothersmaynotchangeatallforthedurationoftheblock.
Note:ThepollingintervalforblocksisdeterminedbytheEventMonitorPollingInterval(Navigatorpane→MonitoringServicenode→Settings→EventMonitortab).
SQLServer NameoftheSQLServerhostingtheSPID.
StartTime Starttimeoftherequest.
Duration Thelengthoftimethattheblockexisted.
Plan UsethePlanbuttontoopenaPlanExplorersessionfortheassociatedqueryplan.
Statement Thecommandtextassociatedwiththerequest.
Object Theobjectassociatedwiththerequest.
WaitTime Durationofwaittimeinmilliseconds.
WaitType NameoftheWaitType.FormoreinformationaboutwaittypesseethisMSDNarticle.
WaitResource Nameoftheresourceonwhichtherequestiscurrentlywaiting.
Host Theclientworkstationspecifictothissession..
Application Theassociatedapplication.
Database Theassociateddatabase.
Login TheLoginNameassociatedwiththesession.
LastBatch Thelasttimeaclientprocesscompletedbatchexecution.
HostProcessID TheprocessIDoftheclientprogramwhichinitiatedthesession.
9.11 Deadlocks
SentryOne User Guide | 236
Appliesto:SQLSentry
TheDeadlockstabdisplaysinformationaboutdeadlockshappeningwithinyourenvironment.UsetheDeadlockstabtoidentifyandcorrectdeadlocksonyourmonitoredservers.
ForaquickoverviewoftheDeadlockstabbesuretoseetheSQLServerDeadlocksvideoontheSentryOneTVwebsite.
DEADLOCKCOLLECTIONDeadlockcollectioniscontrolledthroughtheDeadlockSourceSettings.TheCollectDeadlockEventssettingisTruebydefault,sowheneveranewSQLServerInstanceiswatched,deadlockeventswillbeautomaticallycollectedforthatInstance.YoumayadjustdeadlockcollectionasdesiredthroughtheSettingspane(Viewmenu→Settings).
ExpandforDeadlockSettingsExamples
IfyouwantedtodisabledeadlockcollectionGlobally.
1. SelecttheSharedGroupsnodeintheNavigatorPane(Globalcontext).2. IntheSettingspane,usethetopdrop-downlistandselectSQLServerSettings.3. Usetheseconddrop-downlisttoselectDeadlocksSource.YoushouldnowseetheDeadlocksSourceSettingsthatarebeingappliedGlobally.
4. ChangetheCollectDeadlockEvents:CollectionSettingtoFalse,itwillbesavedautomatically.
IfyouwantedtodisabledeadlockcollectionforanindividualInstance:
1. SelectthedesiredInstancenodeintheNavigatorpane.2. IntheSettingspane,usethedrop-downlistandselectDeadlocksSource.3. YoushouldnowseetheDeadlockSourceSettingswhichareconfiguredfortheInstance.ChangetheInheritFromParentSettingtoFalse.
4. ChangetheCollectDeadlockEvents:CollectionSettingtoFalse,itwillbesavedautomatically.
DEADLOCKRETENTIONBydefault,PerformanceAnalysisBlocking,TopSQL,andDeadlockdataisretainedfor15days.ThisiscontrolledwiththeKeepPerformanceHistoryForSettingfoundontheStoragetaboftheGlobalSettings(Navigatorpane→Configuration→GlobalSettings→Storagetab).FormoreinformationaboutretentionseetheDataCapacityPlanningKBarticle.
DEADLOCKALERTINGYoumayconfigureActionsinresponsetotwoSQLServerDeadlockConditions.TheSQLServer:DeadlockConditionoccurseachtimethereisadeadlockinyourenvironment.ThereareanumberofActionswhichyoucantakeinresponsetothisConditionoccurring.
YoumayalsoconfigureanActioninresponsetotheSQLServerDeadlock:OutputContentMatch(OCM)Condition.TheOCMConditioncanbeusefulinnarrowingthenotificationsyouseeconcerningdeadlocks.TheOCMConditionusestheentiredeadlockXMLtomatchagainst,makingitapowerfultoolinpinpointingspecificdeadlocks.
SentryOne User Guide | 237
DISPLAY/CONTROLS
TOOLBARTheDeadlockstabhastwomodes,RealTimeandHistory.Theactivemodeiscontrolledthroughthetoolbar.Whentheauto-refreshPlaybuttonisselected,thetabentersRealTimemode.InRealTimemode,anydeadlockswhichhappenedwithinthelast10minuteswillbedisplayed.
Whentheauto-refreshPausebuttonisselected,thetabgoesintoHistorymode.SelectatimerangeandthenusetheGotoolbarbuttontoviewdeadlockswhichhappenedduringthattimeperiod.Alternatively,usetheJumpToLastDeadlockbuttontonavigatetothelastdeadlock.
FILTERThetoppaneprovidesclientfiltersforspecifyingwhichrecordstodisplayfortheselectedinterval.
Note:TheFilterpaneisforClientsidefilteringonlyanddoesnotimpactwhatisactuallycollected.SeetheDeadlockCollectionsectionofthistopicforcollectionrelatedinformation.
Afterchanginganyofthefilters,itisnecessarytoclicktheRefreshbutton,orpressF5,toapplythefilter.Toselectmorethanoneiteminalist,useshift-clickorctrl-click.Theavailablefiltersare:
SQLServersShowTop-dependingonthelengthofthedisplayedinterval,youmayhavealotofdatatoworkwith.Thissettingcontrolshowmanyoftherowsareactuallyretrieved.
DEADLOCKGRIDVIEWTheDeadlockGridviewliststherecordsmatchingthecurrentfilters.Thedefaultfilteristodisplayallrecords.Eachrecordisexpandabletoviewthedetailsregardingtheprocessesthatwereinvolvedinthedeadlock.ForgeneralbackgroundinformationaboutwhatconstitutesaSQLServerdeadlock,seethisgroupofMSDNarticles.ForgeneralinformationaboutthemetricsdisplayedseetheDeadlockMetricssectionattheendofthistopic
DEADLOCKGRAPHTheDeadlockGraphisformedaccordingtothecaptureddeadlockXML.ProcessandResourcenodesareindependentlyrepresented,alongwithanyrelationshipswhichexistbetweenthem.
Thedeadlockvictimishighlightedwitharedbackground.Thenumbers(1)andassociatedarrows,betweeneachnode,indicatetheactualsequenceofeventswhichtookplace,leadingtothedeadlock.Thelettersindicatetherequestedlockmode.
Selectingobjectnodesinthegraphicalrepresentationwillsetfocustothatobjectinthegridview.YoumayzoominandoutontheDeadlockGraphusingctrl+mousewheelorthroughtheright-clickcontextmenu.
ADDITIONALOPTIONSThereareadditionaloptionsavailablethroughtheright-clickcontextmenu,including:
JumptoCalendar-gotothateventontheEventCalendar(requiresservertobewatchedwithEM).
SentryOne User Guide | 238
JumptoTopSQL-opentheTopSQLtabhighlightingthequeryinvolvedinthedeadlockevent.ExportDeadlocktoXML-exportsthedeadlockinXMLformat.Thedividerbetweeneachofthesepanescanbedraggedtoresizeorhideeachpane
YoumayopenexportedDeadlockXMLfiles(*.xdl)intheSentryOneClient(Filemenu->Open).Wheneveryouopenadeadlock,anewtabdisplayingthedeadlockinformation,includingthedeadlockgraphwillbecreated.
DEADLOCKMETRICSDeadlockOverview
Name Description
SQLServer TheSQLServerwherethedeadlocktookplace
Time Thetimethedeadlockoccurred.
VictimSPID ThesessionprocessIDoftheVictiminvolvedinthedeadlock.
VictimHost Theworkstationbelongingtothevictimthread.
VictimApplication Theapplicationnamebelongingtothevictimthread.
VictimDatabase Thenameofthedatabaseonwhichtheprocesstookplace
VictimTextData Theassociatedtextdataofthevictim.
DeadlockXML ThisistheactualcapturedDeadlockXML.
LockDetails
TheLockDetailsareabreaksdownthedeadlockbyspecificlocktypes,includingtheownersandwaitersinvolvedineachlock.
Name Description
SPID[ecid] ThesessionprocessIDoftheassociatedowner/waiter.
Plan UsethePlanbuttontoopenaPlanExplorersessionfortheassociatedqueryplan.
Host Theworkstationname.
Application Theassociatedapplication
Database Theassociateddatabase.
LogUsed TheamountofLogSpaceusedbytheprocess.
DeadlockPriority
SpecifiestheDeadlockPriority.Zero(0)orNORMAListhedefaultpriority.Incaseswhereeachsessionhasthesamedeadlockpriority,SQLServerwillchoosethevictimbasedontheleastexpensivesessiontorollback.ForgeneralinformationabouttheDEADLOCK_PRIORITYoptionseethisMSDNarticle.
WaitTime Timein(ms)millisecondsspentwaitingontheresource.
TransactionStartTime Timethatthetransactionbegan.
LastBatchStartTime Thelasttimeaclientprocessstartedbatchexecution.
LastBatchCompletionTime Thelasttimeaclientprocesscompletedbatchexecution.
Mode/Type TheMode/Typedesignatestheresourcelockmode.ForgeneralinformationonLockModesseethisMSDNarticle.
SentryOne User Guide | 239
Status Stateofthetask.
IsolationLevel Thecurrenttransactionisolationlevel.ForgeneralinformationonisolationlevelsseethisMSDNarticle.
LoginName TheLoginNameassociatedwiththesession.
Owner/WaiterDetails
Name Description
Object Indicatestheassociatedobjectname.
LineNumber Thelinenumberwhichwasbeingexecutedwhenthelockoccurred.
TextData Theassociatedtextdata.
Name Description
9.12 QuickTraces
Appliesto:SQLSentry
QUICKTRACE™AQuickTrace™isacomprehensivesnapshotofactivitycreatedbycombiningprocess-leveldataandtraceeventscollectedduringabriefsampleperiod.VariousmetricssuchasCPU,I/O,recompiles,cachemisses,cursoroperations,etc.,areautomaticallyaggregated,andcanbeeasilygroupedandsorted,toprovideaclearpicturetheprocesses,hosts,applications,orusersresponsibleforactivityduringthesample.WhereasthecontinuousTopSQLtraceusesfilterstocollectonlytheheaviesteventsbydefaultinordertomaintainlowoverhead,aQuickTraceisnotfilteredandsocollectsallevents.ThisiswhyQuickTraceisbothtime-androw-limited,toavoidimpactingtheperformanceofthetargetSQLServer.AQuickTraceistypicallyrunmanuallyfromthedashboardinresponsetoobservinghighutilizationinoneormoremetrics.Forexample,ifyouseeanspikeinTransactions/secontheSQLServerActivity,youcanrunaQuickTrace,thensortbyTransactionstodeterminethecause.
COLUMNSETTherearefourColumnSetsthatcanbeselectedandmodifiedtoprovideapre-determinedviewofthedatawithpresetcolumnsandsorting.IfaQuickTraceislaunchedbyrightclickingtheNetwork,CPU,SQLServerActivity,orDiskIOcharts,theappropriatecolumnsetwillbeusedbydefault.Theactivecolumnsetcanbeeasilychangedbyright-clickingthemasterordetailcolumnheaderrowandselectingtheColumnChoosermenuitem.WhenyouinitiateaQuick TracefromtheQuick TracestabtheSQLActivityColumnSetwillbeused.TheQuick TracestablistsallQuick Tracesoccurringduringtheactivedaterange.Quick TracescanbeexecutedmanuallyorautomaticallyviatheRun Quick TraceactioninresponsetoaconditionsuchasRuntimeThresholdMaxorPerformanceCounterThresholdMax.
SentryOne User Guide | 240
RUNNINGAQUICKTRACEWhenRun Quick TraceisselectedfromtheQuick Tracestaborfromtheright-clickmenuontheotherapplicabletabs,theoptionsmenuopens.Inthefirstdialoguebox,theusercanenterthelengthoftimetheQuick Tracewillrun.IntheseconddialogueboxtheusercaneitherCollectstatement eventsornotbyusingthecheck-box.Inthethirdbox,thenumberofTrace Datarowscanbelimitedtothedesiredamount.
DefaultSettings:
TheQuick Tracewillrunfor15seconds.Collectstatementeventsisunselected.LimitTraceDatato10000rows.
*Generallythesesettingsarefinebutmayneedtobeadjustedincertainsituations.
RESTRICTIONSInordertoavoidimpactingserverperformanceonverybusysystems,therearecertaincaseswhereSentryOnewillrestrictQuickTracefunctionality.Seethetablebelowformoreinformationaboutthesecases.
QuickTraceRestrictions
Case
AQuickTracewillbenotallowedifa100Mbadapterispresent,andthelastsampleindicatesthereare>300usersor>3000transactionspersecondforthetargetedserver.
ThisstateisalsocheckedbeforeautomatedQuickTracesarerun.Ifthestateisdetected,theQuickTraceisdisallowed.
AQuickTraceisnotrecommendedinthecasewhere1000Mboraboveadaptersarepresent,andthelastsampleindicatesthereare>500usersor>5000transactionspersecondforthetargetedserver.
IfthisstateisdetectedduringamanuallyinitiatedQuickTrace,awarningwillbegeneratedindicatingthattheQuickTraceisnotrecommended.ThestateisalsocheckedbeforeautomatedQuickTracesarerun.Ifthestateisdetected,theQuickTraceisdisallowed.
WARNING:SentryOneVersion7introducedtheaboverestrictionsforQuickTracefunctionality.Forpriorversions,usetheaboverestrictionsasaguidelinewhenrunningAQuickTrace.Failuretofollowtheseguidelinesmaycauseatemporarysuppressionoftransactionthroughput.TheriskofimpacttoperformanceismuchgreaterifthenetworkspeedbetweentheSentryOneClientandthetargetserverislessthan1000Mbps.
EXPORTINGAQUICKTRACEOnceaQuickTraceiscomplete,itcanbeopenedforviewing.Thiscanbedonebydouble-clickingonitorbyright-clickingandselectingopen.Fromthere,thefilecanbeexportedusingtheExportoptionintheFilemenu.Therearetwoformatsitcanbeexportedin:
SentryOne User Guide | 241
WebPages(.htm,.html)MicrosoftExcel(.xls)
DISPLAYThetoppaneprovidesaseriesoffiltersandcontrolsforspecifyingwhichrecordstodisplayforthespecifiedinterval.Theavailablefiltersare
SQLServersOwnerSource
Thebottompaneliststherecordsmatchingthecurrentfilters.Thedefaultfilteristodisplayallrecords.
CONTROLSTopPane
Setfilter-Afterchanginganyofthefilters,itisnecessarytoclicktheRefreshbutton,orpressF5,toapplythefilter.Listboxfilters
Clickonacombinationofitemsinanyoftheliststosetthefilters.Thedefaultfilteristodisplayallrecords.Toselectmorethanoneiteminalist,useshift-clickorctrl-click.
SQLServers(dropdown)-SelectserverinstancetorunaQuickTrace.RunQuickTrace-StartaQuickTraceagainsttheselectSQLServerinstance.
BottomPaneSortColumn-clickanycolumnheadertosortbythatcolumn.GroupBybox-draganycolumnheaderheretogroupbythatcolumn.Doubleclickonarow-ViewtheselectedQuickTrace.ContextItems
JumptoDashboard-openstheDashboardwiththeselectedQuickTraceeventoverlaidoneachofthecharts.Open-ViewtheselectedQuickTrace
VIEWERTheQuickTraceViewerpresentsasetofnestedcontrolstoinspectthetrace.ThesecontrolsbehavethesameasontheQuickTracestab,andwillnotbecoveredhere.
Rightclickingonatracerecordpresentsacontextmenuthatwillallowyoutocopytheeventrowdatatotheclipboardorkilltheprocessassociatedwiththattraceevent.Note:theindividualtextcanbecopiedfromtheTextDatacolumn,oncehighlighted,using(Ctrl+C)orthecontextmenu.
Additionalcontrolspresentedinclude:
Reload-RunanewQuickTraceofthesametarget.Refresh-AvailablewhenaQuickTraceisruninreal-time,andcausestheQuickTracetoexecutewithsameparameters.
SentryOne User Guide | 242
Options-OpenstheOptionspane.AvailableoptionsintheViewerare:Auto-highlightdetailrowswhensortingbyaneventtotalscolumnFreezemetadatacolumnsHiderowswithemptyvaluesinsortcolumnMaintainrowpositionwhenchangingsortShowQuickTraceprocessShowstatementeventsifavailableShowsystemprocesses
Close-ClosetheQuickTraceViewer
9.13 PerformanceAnalysisOverview
ThePerformanceAnalysisOverviewprovidestheuserwithasummaryofperformancedataforallwatchedInstanceswithinagroup.ToopenthePerformanceAnalysisOverview,usetheright-clickcontextmenuofanygroupnode.SelectingtheAllTargetsnodewillopenanoverviewshowingalloftheInstancesthatarebeingwatched.SelectingacustommadegroupnodewillonlydisplaytheInstanceswithinthatgroup.
UsetheShowAvgOverdrop-downlistboxtochangetheintervalforthesummarizeddata.UsetheShowdrop-downlistboxtovieweitherWindows,SQLServers,orAnalysisServices.Double-clickonanyTargetorInstancetoopenPerformanceAnalysisforthatInstance.
Clickingonaperformancemetricwillcauseahistoricalgraphtoappearatthebottomofthescreen.
Note:Historicalgraphsarenotavailableforallmetrics.
PleaseseethePerformanceMetricssectionoftheUserGuideforadetaileddescriptionofthevariousperformancemetrics.
ThedefaultsettingforthePerformanceAnalysisOverviewSkinisblack,butcanbesettostandardviatheUserPreferenceswindow.(Tools->UserPreferences->PerformanceAnalysis)
FAILOVERSIMULATIONWhenthemonitoredInstancesincludeAlwaysOnAvailabilityGroups,theuserhastheabilitytosimulatewhattheperformancevalueswouldbeintheeventofafailover.Todothis,expandthenodesuntiltheAvailabilityGroupslevelhasbeenreached.Right-clickingonanAvailabilityGroupthatiscurrentlythePrimarywillproduceacontextmenuthatgivestheusertheoptiontoselectwhichSecondaryreplicathattheywouldliketosimulateafailoverto.TheusercanalsosimulatefailovervaluesfromaSecondarybyright-clickingontheSecondaryreplicaandselectingSimulateFailoverfromthecontextmenu.Tostopthefailoversimulation,selectResetSimulationfromthecontextmenuofanAvailabilityGroup.ThesimulationcanalsoberesetfromtheToolsmenu.
Oncetheuserhasselectedtosimulatethefailover,simulatedvalueswillappearasitalicized.
SentryOne User Guide | 243
ClickingonasimulatedvaluewillcauseahistoricalgraphoftheactualvaluestoappearalongwithaSimulatedValuescharttoallowtheusertoquicklycomparethesimulatedvaluetotheactualvalue.
FILTERSInthetoprightcornerofeachfiltercolumnheaderisafilterbutton.Onceselected,theusercanchoosetheoperatorandvaluetofilterthedata.Onceafilterisset,itwillappearalongthebottompanelofthewindow.Editstothefiltercanbemadeherebysimplyclicking'EditFilter'andchangingthecriteria.Itcanalsobedisabledbyclearingthecheckboxorclosedcompletelyusingthe'X'ontheleftside.
COLORINDICATORSInstancenameswillappearindifferentcolorsdependingonthestatusoftheInstance.
Color Status
Gray
(Black in the Standard View)Normal
Orange AmetrichascrossedtheWarningthresholdatorbelowthislevel.
Red AmetrichascrossedtheCriticalthresholdatorbelowthislevel.
Black
(Gray in the Standard View)InstanceOffline
PERFORMANCEANALYSISOVERVIEWTHRESHOLDSTargetLevel Normal Warning Critical
NetworkOutboundQueue >=3 >=3for20secondduration
NetworkInboundErrors >0
NetworkOutboundErrors >0
MemoryFree(MB) <100
CPUContextSwitches <5000times#ofcores >=5000times#ofcores >=7500times#ofcores
CPUProcessingTime% 85-89 >=90
CPUQueueLength >2timesthe#ofcores
TargetandSQLServerLevel
DiskReadsms/IO <20 20-29 >=30
DiskWritesms/IO <20 20-34 >=35
SQLServerLevel
SentryOne User Guide | 244
SQLServerActivityBlocks >0
SQLServerActivityDeadlocks >0
AverageWaitTime(ms)CPU% >25
SQLServerMemoryGrantsPending >2
SQLServerMemoryPLE <600
DiskIOLazyWrites >20
SSASLevel
SSASFormulaEngineQueuedJobs >0
SSASStorageEngineQueuedJobs >0
SSASMemoryCacheEvictions >0
SSASStorageTempFile(KB) >0
SSASMemory(KB)Shrunk >0
TargetLevel Normal Warning Critical
9.14 PerformanceAnalysisToolbar
PERFORMANCE ANALYSIS TOOLBAR
ThePerformanceAnalysistabscanbesynchronizedtoviewperformancedataforahistoricalperiod,orinrealtimemodefortheprevious10minutes.Thisiscoordinatedusingthetoolbar.Seethechartbelowformoreinformationaboutthetoolbar.
# ButtonName Description
1 PrintPreview PrintpreviewnotactiveinPerformanceAnalysis.
2 Print PrintfunctionnotactiveinPerformanceAnalysis.
3 NewPlanExplorerSession OpensanewPlanExplorerSession.
4 OpenPlanFIle Openexecutionplanfile.
5 Save Saveexecutionplanfile.
6 StartDate Setthebeginningdateforviewingarangeofperformancerelateddata.
7 StartTime Setthebeginningtimeforviewingarangeofperformancerelateddata
8 EndDate Settheenddateforviewingarangeofperformancerelateddata.
SentryOne User Guide | 245
9 EndTime Settheendtimeforviewingarangeofperformancerelateddata.
10 Go Activatetheselectedstart/endtimerange.
11 GoToCurrentTime Moveforwardsothatthedisplayrangeendsatthecurrenttime.
12 ZoomOut Increasethedaterange.
13 ZoomIn Decreasethedaterange.
14 PreviousInterval Skipbackintimeonefullinterval.
15 PreviousSmallInterval Skipbackintimeonesmallunitoftheintervalscale.
16 NextSmallInterval Skipforwardintimeonesmallunitoftheintervalscale.
17 NextInterval Skipforwardintimeafullinterval.
18 SynchronizeTabs Automaticallysetsalltabstotheactivedaterange(enabledbydefault).
19 StartAuto-refresh Enablesautomaticupdatingofrealtimedataforthecurrenttab,oralltabsifSynchronizeTabsisenabled.
20 PauseAuto-refresh Pausesautomaticupdatingofrealtimedataforthecurrenttab,oralltabsifSynchronizeTabsisenabled.
21 Refresh Refreshtheactiveviewbyretrievingthelatestdatafortheactivedaterange.
22 ShowHistory Togglebetweenhistoryandsamplemodeswhenonthedashboard.
23 RunQuickTrace UsedtoexecuteaQuickTrace.
24 ShowWindowsProcesses OpensthecurrentWindowsprocessesfortheserver.
25 JumptoCalendar OpenstheCalendartabintheworkspacearea.
26 ShowAdvisoryConditionMarkers EnablesanddisablesAdvisoryConditionglyphsandEventMarkers
# ButtonName Description
9.15 DataGrids
DATAGRIDOVERVIEWOnthedifferenttabsinSentryOne,varioustypesofgridsareusedtodisplaydata.Allofthegridscontainapplicableinformationaccordingtowhichtabtheyareon.Thesegridsareveryeasytocustomizeandprovidetheuserwithavarietyoforganizationalmethods,withafewsimpleclicks.
GROUPBYManyofthegridsfoundinSentryOnecanbegroupedbycolumnfields.Thiscanbedonebydraggingthecolumntothetitleareaofthegrid.Thiswillgroupallofthedataintotherespectivecategoriesofthecolumnselected.TheGroupByfunctioncanalsobedonebyright-clickingonthecolumnheaderandselectingtheoptionfromthemenu.
SORTINGThegridsthatareshowninSentryOnecanbeeasilysortedtoorganizedata.Thiscanbedonebyclickingthecolumnheaderwhichwillautomaticallysortaccordingtothevaluesinthatcolumn.Clickingthesamecolumnagainwilltogglebetweenascendinganddescendingorderforthedatainthatfield.Thiscanalsobedoneusingtheright-clickmenuthatopenswhenthecolumnheaderisselected.
FILTERSOnmanyofthefieldsfoundongridsinSentryOne,afiltercanbeusedalongwithdifferentsortingmethodstoorganizedata.Thefiltersshowuponapplicablecolumnheadersonthetop-rightsideofthecellwhenthemouseisoverit.Thefiltercanbeselectedbyclickingthesmallfilterbutton,whichwillbringupthefiltermenuoptions.TheFilterEditorisavailablefromtheright-clickmenualso.Thisfeatureallowstheusertospecifyfilterconditionsbytypingthemintothe
SentryOne User Guide | 246
windowthatopens.
EXPORTINGGRIDSTheDataGridsfoundinSentryOneprovideagreatdealofinformationtotheuserinaformthatisveryeasytocustomize.Oncethedesiredorganizationofthecolumnshasbeenachieved,theusercanexporttheinformationinavarietyofformats.ThiscanbedoneusingthefilemenuontheapplicabletabsoftheSentryOneClient.SelectExport Data,giveafilename,thenselectthedesiredfiletype.
TypesofFiles:
CSVFiles(*.csv)MicrosoftExcel(*.xls)AdobeAcrobatFiles(*.pdf)WebPages(*.htm;*.html)
9.16 VirtualMachineSupport
HYPER-VSUPPORTAftermonitoringaHyper-VGuesttargetwithSentryOne,theHostofthattargetwillappearundertheVirtualizationnodeintheNavigatorPane.
WhenaHyper-VHosttargetismonitoredwithWinSentry,theHostandalloftheHost'sGuestswillappearundertheVirtualizationnodeintheNavigatorPane.Additionally,memoryballooningandvCPUinformationwillnowbepresentedonthedashboardsonHyper-VGuesttargets.TheHostinformationwillbeprovidedontheDashboardaswell.
VMWARESUPPORTToenableVMwaresupport,avCentermustbeadded.ToaddavCenter,right-clickontheVMwarenodeundertheVirtualizationnodeintheNavigatorpaneandselecttheAdd vCenteroption.
OncethevCenterhasbeenadded,anyVMwareGuesttargetswillnowdisplayCPUReadyTime,Co-Stop,andmemoryballooningmetricsontheirdashboards.
NOTE:WhenaddingavCentertoasitewithmultipleMonitoringServices,inordertoavoidpotentialoverheadassociatedwithWindowssessionauthentication,itisrecommendedthatyouusealocalvSphereaccount.
VIRTUALMACHINEPERFORMANCECOUNTERSInadditiontogettingVM-relatedmetricsonthePerformanceDashboards,VirtualMachinePerformanceCountersarealsoavailableforuseinAdvisoryConditionsandareavailableforviewinginthePerformanceCounterHistoryReport.
NOTE:MemoryballooninginformationisonlyavailableforGuestswithdynamicmemoryenabled.vCPUinformationwillonlybedisplayedontheSampleModeDashboardCPUchartsifthevalueis>1%.
SentryOne User Guide | 247
9.17 cloud.sentryone.com
Cloud.sentryone.comisawebservicehostedbySentryOnewhichallowsuserstouploadandsharecertaininformationabouttheirmonitoredSentryOneenvironment.Oncetheclouduploadisconfigured,apartialreplicaofyouron-premisesSentryOnedatabasewillbeginsyncingtotheSentryOnecloud.
Duringtheconfigurationprocess,youwillfirstregisterauserwithcloud.sentryone.com,andthenenablewhichmonitoredserversinyourenvironmentaresyncedtothecloud.Initially,onlytheuserwhocompletedtheconfigurationprocesswillhaveaccesstothesyncedinformationoncloud.sentryone.com.Thereareseveraloptionsforsharingyourdatabaseoutlinedhere,includingtheabilitytosharewithindividuals,andtheabilitytodefineasubsetofwhichserverswillbevisibletothoseuserswithwhichyoushareyourdatabase.
WHAT'SAVAILABLEINTHECLOUD?Thecloud.sentryone.comofferingincludesthefollowingfeatures:
ServerHealthStatus-AhighlevelviewofthehealthofyourenvironmentServerDetails-Adetailedviewofyourenvironment'sperformance,includingreportsandanareatomanagecloudsharing
CLOUDCONFIGURATIONINTHESENTRYONECLIENTToconfigureyourenvironmentforcloudsynchronization,expandtheMonitoringServicenodeintheNavigatorPaneandopenthecloud.sentryone.comnode.
REGISTRATIONFromthecloud.sentryone.comtab,clicktheConfigureSyncbuttontobegintheregistrationprocess.IfyouhaveanexistingSQLPerformance.comaccount,itcanbeusedforcloud.sentryone.com.Ifyoudonothaveanaccount,youmaycreateoneusingtherightsideoftheregistrationform.
CONFIGURATIONAftercompletingtheregistrationprocessandloggingin,youwillseealistofallmonitoredTargetsandInstancesinyourenvironment.Youwillalsonoticethattheinitialstateofthesynchronizationisoff.
CHOOSINGWHICHTARGETSANDINSTANCESTOSYNCFromthelistofTargetsandInstancesinyourenvironment,youmaychoosewhichonesyouwouldliketoenablethecloudsynchronizationprocess.IfyouwouldliketoselectallTargetsandInstances,youcansimplyright-clickandselectEnable->Allfromthecontextmenu.
CHOOSINGWHATTOSYNCWhenanInstanceisselectedtobesyncedwiththecloud,TopSQL,BlockingSQL,andDeadlockinformationareenabledforsyncbydefault.Withtherealizationthatyoumayhavesensitivedatainyourenvironment,youhavecontroloverwhichtypesofinformationgetsyncedtothecloud.YoucandisableanyoftheseoptionsbydrillingintotheInstanceanduncheckingtheboxnexttotheoptionthatyouwouldliketodisable.
SentryOne User Guide | 248
Note:Regardlessofwhatsub-systemsaredisabled,performancemetricswillalwaysbesynchronizedforInstancesthathavecloudsyncingenabled.
ALIASINGTARGETS,INSTANCES,ANDDATABASESWhenyousynchronizeyourSentryOnedatawiththecloudyouhavecompletecontroloverwhoseesthisdataandhowyouchoosetoshareit.Asanaddedsecurityfeature,youmaychoosetoaliasthenamesofTargets,servers,anddatabasesbeforetheyaresynchronized.Thisobfuscationallowsyoutohidepotentiallysensitivedata.
YouhavetheabilitytoaddaliasesbytypingintheAliasfield,oryoucanauto-generatealiasesthroughthecontextmenu.Onceyouhavemadeyourselections,toggletheOffbuttontotheOnposition,andafterabriefinitializationprocess,synchronizationwillbegin.SynchronizationwillcontinuetooccurattheSyncFrequencythatisselected.
NOTE:Changesinaliasnamesorobjectsenabledforsyncingrequireasavebeforethesettingswilltakeeffect.
RESTRICTINGVISIBILITYOFSERVERSSentryOnesupportsrestrictingservervisibilityinthecloudthroughtheapplicationofRightsBasedSecurity.WithRightsBasedSecurity,ausercanbeassignedalimitedsetofvisibleSites,TargetGroups,orInstances.ThoserightsthatyouconfigureintheSentryOneClientforauserwillbehonoredinthecloud.
Torestrictwhatashareduserhasaccessto,firstcreateauserintheSentryOneclientandrestricttheirrightsviaRightsBasedSecurity.ThatuserwillthenbeavailableintheLinktoSentryOneClientUserdropdownwhilesharing.
NOTE:Whencreatingauserforcloudsharingpurposes,itisnotnecessaryfortheusertohaveaSQLServerlogin.
9.17.1 ServerDetails
TheServerDetailsareaofthecloudincludesthefollowingfeatures:
VIEWSPerformanceOverview:ThePerformanceAnalysisOverviewprovidestheuserwithasummaryofperformancedataforallsyncedservers.ThisisthewebequivalenttotheSentryOneClientPerformanceAnalysisOverview.EventsLog:TheEventsLogprovidestheuserwithalistingofAdvisoryConditionEventsforsyncedservers.Actualevaluationvaluesarenotprovidedwithinthecloud,onlytheopenedandclosedstatusoftheAdvisoryConditions.ThisisthewebequivalenttotheSentryOneClientGlobalEventsLog.Reports:ExpansivelistofReportsforyourmonitoredenvironment.ThisisthewebequivalenttotheSentryOneClientReportingoptions.
MANAGEMENTOPTIONSSyncHistory:ThecompletesynchistoryofyourSentryOnerepositorydatabase.Thisincludesalistingofeachtablethathasbeensyncedwithcloud.sentryone.com.
DatabaseDetails:Providessummaryinformationaboutyourcloudinstallation.Thesharing
SentryOne User Guide | 249
ofyourcloudinstallationcanbemanagedfromthisview.
SHARINGYOURCLOUDDATABASEYoucanshareyourclouddatabasebyaccessingtheDatabaseDetailspageoncloud.sentryone.com.FromtheMemberSectionOverviewpage,selecttheLaunchDatabaseiconandthenselecttheDatabaseDetailstab.FromtheDatabaseDetailstab,locatetheDatabaseSharingsection.Youcanshareyourdatabasewitheitheranexistingcloud.sentryone.comuseroranon-member.Youmayalsochoosetorestrictwhatserversarevisibletothoseuserswithwhomyoushareyourdatabase.Formoreinformation,seethesectionsbelow.
SHARINGWITHANEXISTINGUSER:Ifyouwouldliketoshareyourdatabasewithanexistinguser,youcandosoeitherviaemailorcloud.sentryone.comusername.Theexistinguserwillreceiveanemaillettingthemknowthatyouhavesharedadatabasewiththem,andthenexttimetheylogin,theywillhaveaccesstotheshareddatabase.
SHARINGWITHANEWUSER:Ifyouwouldliketoshareyourdatabasewithanon-member,simplyentertheiremailaddress.Theywillbeinvitedtoregisteroncloud.sentryone.comviaemail,andoncetheyhavecompletedtheregistrationprocess,theywillhaveaccesstotheshareddatabase.
RESTRICTINGVISIBILITYOFSERVERSSentryOnesupportsrestrictingservervisibilityinthecloudthroughtheapplicationofRightsBasedSecurity.WithRightsBasedSecurity,ausercanbeassignedalimitedsetofvisibleSites,TargetGroups,orInstances.ThoserightsthatyouconfigureintheSentryOneClientforauserwillbehonoredinthecloud.
Torestrictwhatashareduserhasaccessto,firstcreateauserintheSentryOneclientandrestricttheirrightsviaRightsBasedSecurity.ThatuserwillthenbeavailableintheLinktoSentryOneClientUserdropdownwhilesharing.
NOTE:Whencreatingauserforcloudsharingpurposes,itisnotnecessaryfortheusertohaveaSQLServerlogin.
9.17.2 ServerHealthStatus
ServerHealthStatusprovidesyouwithahighlevelviewofthehealthofyourenvironment.
SERVERHEALTHSTATUSANDADVISORYCONDITIONSSomefunctionalityoftheServerHealthStatusisdependentontheuseofAdvisoryConditions.InadditiontoyourownAdvisoryConditions,youcandownloadthelatestAdvisoryConditionPackfromtheToolsmenuintheSentryOneclient.ThispackincludesmanyAdvisoryConditionsthatwillassistinmonitoringperformanceissues,suchashighCPUusage,diskwaits,andmore.
ELEMENTSOFSERVERHEALTHSTATUS
SentryOne User Guide | 250
ViewsTherearethreeavailableviewsontheServerHealthStatuspage.TheServerHealthIndicatorandScorewilldisplaydifferentinformationdependingonwhatviewyouareusing.
WaitTime/Session–UsesascorebasedonwaitstatsEventsbyTag–HealthIndicatordisplaysinformationrelatingtoAdvisoryConditiontagsEventsBySeverity–HealthIndicatordisplaysinformationrelatingtoAdvisoryConditionseverity
HealthIndicatorTheHealthIndicatorprovidesavisualrepresentationofaserver’shealth.
IntheWaitTime/Sessionview,theIndicatorisdividedinto5sections.Goingclockwise,thesesectionsrepresentwaitsofthefollowingcategories:CPU,Memory,Disk,Other,andNetwork.Asthesewaitsincrease,thecorrespondingsectionwillbegintofillandtheHealthIndicatorwillbegintochangecolor,goingfromgreentoyellowtored.
IntheEventsbyTagview,eachsectionrepresentsthetagsthatareappliedtotheAdvisoryConditionsinyourenvironment.
IntheEventsbySeverityview,theHealthIndicatorisdividedintoquadrantsrepresentingLow,Medium,High,andCritical.
ScoreScoresgiveyouametrictousetoquicklyevaluateyourserver'shealth.
WaitTime/SessionreliesonwaitstatsdatathatarecollectedbySentryOne.Thesewaitstatsarebrokendownbymajorresourcecategory(Network,CPU,Memory,Disk,Other).The"Other"categoryisforafewotherimportantwaittypesthatcaneitheraffectperformanceinmorethanonemajorcategory,orcannotbedirectlyattributedtoanycategorywithabsolutecertainty,suchasbackupsandparallelismrespectively.Eachcategoryiscalculatedindependently.Thedisplayedvalueforacategoryiscalculatedasthewaitsforthecategorydividedbytheusersessions.Thevaluesforwaitsandusersessionsarebasedonthemostrecentvaluespresentintheselectedtimeframe.Eachvalueisthenroundedanddisplayedasthecategory’svalue.Theoverallscoreisthesumofthefiveroundedcategories.
TheEventsbyTagandEventsbySeverityviewsworkbyincorporatingAdvisoryConditions.Bothuser-definedandprepackagedAdvisoryConditionsareusedtocalculatethescores.ThescorefortheseviewsisbasedontheseverityofallopenAdvisoryConditioneventswithintheselectedtimeperiod.Theseveritypointsareasfollows:
Low-1PointMedium-3PointsHigh-6PointsCritical-9Points
Theweightofanopeneventdiminisheswithitsage.Thescorebeingpresentedis100minusthesumoftheweightedvalueofopenevents.
NOTE:ClosedeventsarenotfactoredintotheServerHealthscore.EventscanbeclosedintheEventsLogintheSentryOneclient.
UptimeChartTheuptimechartwillindicateanydowntimethatoccurredwithinthedefinedtimeframe.
SentryOne User Guide | 251
Downtimewillbedisplayedasaredgapwithinthechart.Uptimepercentageisdisplayedbelowthechart.
EventsLogWhenattheInstancelevel,youcanviewtheEventsLog.TheEventsLogdisplaysanyAdvisoryConditioneventsthatwereactiveduringthetimeperiodthatisselected.ThetimeperiodcanbeadjustedbyusingtheTimePeriodFilterinthetoprightcorner.
NavigationBarDetailView–ThisviewdisplaysmoredetailedinformationwithouttheneedtodrillintoaspecificTargetorInstance.SummaryView–Thisviewprovidesaminimalistviewofyourenvironment,allowingyoutoquicklyspotserversthatmaybeexperiencingsub-optimalconditions.GroupMode–ThismodeisavailableineitherviewandallowsyoutoseeTargets/InstancesastheyaregroupedintheSentryOneClientNavigatorpane.ZoomOutZoomInTimePeriodFilter–TheTimePeriodFilterallowsyoutoseetheServerHealthofyourenvironmentovertheselectedperiodoftime.
SentryOne User Guide | 252
10 ImportantConcepts
TheconceptsandterminologycoveredinthissectionareimportantforafullunderstandingofSentryOnesoftware.
EarlierversionsofSentryOnefocusedprimarilyonSQLServerAgentjobs,however,thisisnolongerthecase.EventManager'snewEventConnectorArchitecturenowenablesmonitoringandmanagementofdifferenttypesofschedulingsystems,andvarioustypesofjobs,tasksandstatusevents.
Thisnecessitatedsomedramaticchangestobothoursystemarchitectureandterminology.Asaresult,throughoutthisguidemoregenerictermssuchas"eventstoreconnection"and"eventobject"(orsimply"connection"and"object")areusedwherebeforereferencesto"SQLServers"or"jobs"wereused.Thefollowingtopicscoverthesearchitecturalandterminologychangesindetail.
EventConnectorArchitectureExecutionAgentsExecutionEnginesEventStoresEventStoreConnectionsEventProvidersEventSources
SQLServerAgentJobsSQLServerAgentAlertsReportingServicesReportsSQLServerAgentLogWindowsTasksWindowsEventLogs
EventObjectsActiveEventObjectsStatusEventsHybridEventObjectsEventInstances
10.1 EventConnectorArchitecture
SentryOne'seventconnectorsystemencompassestheentireprocessbywhichSentryOnecollectshistoricalandactivestatusinformationfromvariouseventstores,andtranslatesthedataintothecalendars,lists,andgraphsintheSentryOneClient.ThedatacollectedisalsousedtotriggerthevariousactionscarriedoutbytheSentryOneMonitoringService,suchassendingemailnotifications.
Inanutshell,executionagentstriggerexecutionengineswhichwritedatatoeventstores.Therearemanydifferenttypesofagents,engines,andstores,andit'simportanttonotethatthisprocessisn'tnew,andisnotsomethingweinvented.However,SentryOne'sprimaryfocusiscollectingdatafromtherespectivestores,translatingit,correlatingit,renderingitinameaningfulfashionto
SentryOne User Guide | 253
theDBA,andenablingautomatedactionsbaseduponit.Sowe'vehadtodefinesometermswhichabstractthesecomponentstomaketheprocessbywhichSentryOnecollectsandusesthisdatamoreunderstandable.Creatingnewtermsisn'tsomethingwedoforfun,butrathersomethingwe'vehadtodoheresimplybecauseallotherexisting"enterprise"schedulersutilizetheirownproprietaryexecutionagentsandengines.Sincetheydon't"wrap"otheragentsandenginesaswedo,thereprobablywasn'tmuchofaneedforthesetermsbeforenow.
Asanaside,webelieveour"agent-less"approachissuperiortothe"proprietaryschedulingagent"approachemployedby"enterprise"schedulersinmanyways,includingsignificantlyreducedinstallation,configurationandmaintenanceoverhead,aswellastheabilitytointegratewithsystemssuchasSQLServerAgentinamuchmorenativefashion.Forexample,wedon'tworkwithSQLAgentjobsviathecommandlineusingosql.exeasotherschedulersdo-insteadwetalkdirectlytoSQLServerinitsnativelanguages(DMO,SMO,ADO.NET,etc.).Ingeneral,weletexistingschedulingagentsdowhattheydobest,schedulejobsandtasks,andwedon'ttrytoreplacethem.
ThepartoftheprocessthatisproprietarytoSentryOneishowituseseventproviderstoaccessandtranslatetheeventstoredataovereventstoreconnectionsintotheeventobjectsusedbytheSentryOneClientandServer.Again,wearen'tjustdealingwithSQLAgentjobsanymore,sowe'vehadtocomeupwithafewtermstoabstractthesecomponentstomakethemmoreunderstandableandmanageable.It'salsoimportanttonotethatSentryOneisa100%.NET-basedapplication,sothisobject-orientedapproachisverymuchinlinewithhowwe'vedesignedthesoftware,andinmanywaystheseconceptsandtermsaredescendedfromit.
10.2 ExecutionAgents
Executionagentsrepresentanyprocessresponsiblefortheexecutionofoneormoreexecutionengines.Therearetwotypesofexecutionagents:schedulersandadhoc.
SCHEDULERSSchedulersofcoursetriggerexecutionenginesonanautomatedbasisatpredeterminedtimesand/orintervals.Therearemanydifferenttypesofschedulingagents–therearethoselikeSQLAgentandTaskSchedulerwhichcanbeusedbyanyonetoschedulejobsandtasks.Therearealso"proprietary”schedulers.Theseareschedulersthatexistaspartofsomeapplicationbutdon’toperateasstandaloneschedulers,andthereforecan’tbeusedtoscheduletasksunrelatedtotheapplicationitself.Manyanti-virussystems,diskdefragmentationsystems,andnetworkbackupsystemsfallintothiscategory.
TheschedulersthatSentryOneismostinterestedinarethoseexecutingtasksthat:
canimpactSQLServerperformance.havedependencyrelationshipswithotherSQLServer-relatedjobsortasks.
Schedulersalwayshavejob(ortask)historylogs,whichrecorddatasuchasstarttime,endtime,duration,andjoboutput.IftheSchedulerallowsadhoc(unscheduled)executionofitsjobs,thiswillalsonormallybelogged.GoodexamplesofthisaremanuallyexecutedSQLAgentjobsandWindowsTaskSchedulertaskswhicharewrittentotherespectivehistorylogsjustasscheduledexecutionsare.
SentryOne User Guide | 254
It'simportanttonotetheSQLServerAgentisn'tonlyaschedulingagent-ithasjobsubsystemsthatmanagejobstepsandschedules,butitalsocontainsan"Alertengine"whichdetectsvariousconditionsoftheSQLServerprocessandperformancecounters,andithastheabilitytoauto-restartafailedSQLServerAgentorSQLMonitoringService.
Schedulerssometimeshavetheirownseparatelogswhichrecordgeneralinformation,errorsorwarningconditionsnotnecessarilyrelatedtojobs.AgoodexampleofthisistheSQLServerAgentlog.UnlikeSQLServerAgent,WindowsTaskSchedulerdoesnothaveitsownlog,onlyataskhistorylog.InthecaseofSQLServerAgent,SentryOnecollectsdatafromboththeSQLServerAgentLogitselfaswellasitsjobhistorylog.
ADHOCNon-scheduledexecutionsaretriggeredbyadhocagents,whichincludeusersandresponse-basedsystems.
Whenauserexecutesajobmanually,it'sconsideredanadhocexecution.Likewisewhensomeotheractiveprocessdetectsatransientconditionintheenvironmentandtriggersanexecutionengineasaresultitisconsideredaresponse-basedadhocexecution.
SentryOneisagreatexampleofaresponse-basedsystem-itisabletodetectvariousconditionsrelatedtoeventsourcesandtriggeravarietyofpre-definedactionsinresponse.SeeAlertingandResponseSystemformoreinfo.
Inthecasewhereauserexecutesanenginedirectly,therewillbenoschedulerlogs,andSentryOnewillbedependentontheengine’sownexecutionlogsiftheyexist.IftheenginedoesnotlogorsupportactivestatusqueriesviaAPIorotherinterface,thenweareoutofluckandSentryOnecan’tdoanythingwithit–wecan’tshowtheeventinstancesonacalendar,triggerconditionsandactions,and/ormonitorperformancefortheevent.AnexampleofthisisanSSISpackagethatisrunfromwithinSSMSwithoutpackageloggingenabled,oramanuallyexecutedVBScript(.vbs)filethatdoesn’tperformanylogging.
Themostimportantpointtorememberregardingexecutionagentsisthatiftheschedulerand/ortheexecutionenginelogseventdata,and/oreitherallowsactivestatusqueries,thenSentryOnecanworkwithit.
10.3 ExecutionEngines
Anexecutionengineisjustafancynameforanyapplicationorprogramthatdoessometypeofwork,typicallybackgroundprocessing.Someexamplesare:
SQLAgentjobssqlmaint.exe–theexecutableresponsibleforSQLAgentMaintenancePlanfunctionsReportServerservice–aWindowsservicewhichprocessesReportingServicesreportsandproducesassociatedoutputTaskScheduler–aWindowsserviceresponsibleforrunningtasksDiskdefragmentationsoftware–anexecutablewhichdefragmentslogicaldiskdrivesAnti-virussoftware–anexecutablewhichscansasystemforviruses
SentryOne User Guide | 255
Oneoftheprimarydifferencesbetweenexecutionenginesandotherprogramsisthattheyusuallyrunasbackgroundprocesses,meaningtheyquietlygoabouttheirworkwithoutanysignificantuserinterfaceoruserinteraction.Inotherwords,executionenginesarenotlikeUI-drivenproductivityapplicationslikeMicrosoftWordorExcel.Seemssimpleenough,butit'sanimportantconcept.
There'sanotherimportantcharacteristicofmostexecutionengines–theythrowoffstatusinformation,typicallyintheformofanexecutionlog.ThiselementiskeyformanyofthefunctionsofSentryOne,includingnotifications,chaining,queuing,etc.Ifanexecutionenginedoesnotlogstatusinformationtoitsownexecutionlog,thenSentryOnewilldefaulttousethelogsoftheassociatedscheduler.Thefactthatitdoesn'thaveanexecutionlogdoesn'tmeanthatit'snotanexecutionengine,justthatforSentryOne’spurposesthereisn'treallymuchthatcanbedonewithit–weneedsometypeofexecutionlogdatawithanassociatedprovidertoshowtheeventinstanceonthecalendar,triggerconditionsandactions,monitorperformance,etc.
10.4 EventStores
Aneventstoreissimplyacollectionoflikeeventinstanceskeptinacommonlocation,typicallyadatabaseorfile-basedstorage.Someexamplesareshowninthetablebelow:
EventProvider ProviderType EventType EventStore
SQLServerAgent Scheduler Status FileStorage
SQLServerAgentJob ExecutionEngine Active SQLServerdatabase(MSDB)
WindowsTaskScheduler Scheduler Active WindowsAPI+FIleStorage
WindowsEventLog EventLog Status WindowsAPI
EVENTLOGSEventlogsareatypeofeventstorewhichholdonlystatuseventinstances.TheWindowsEventLogs,SQLServerLogs,andSQLServerAgentLogsareexamplesofeventlogs.
10.5 EventStoreConnections
Aneventstoreconnection(usuallyreferredtosimplyasaconnection)isusedbyeventsourcestoaccessdataineventstoresviasomenetworktransportmechanism.
IntheSentryOneClient,eachSQLServerandWindowsinstancenoderepresentsasingleconnection.
Forexample,theJobseventsourceaboveutilizesthe"SQLServerAgentJob"eventprovideroveranADO.NETconnectiontotheSQLServertoaccesseventdatastoredintheMSDBdatabase.
Formaximumefficiencyandperformance,SentryOneallowsaconnectiontobesharedbymultipleeventsourcessimultaneously-alleventsourcesundertheSQLServerInstancenodeabove(Jobs,MaintenancePlans,Alerts,ReportingServices,andSQLAgentLog)utilizethesamephysicalnetworkconnection.ThisconceptisillustratedinmoredetailintheEnterpriseArchitectureDiagram('EnterpriseArchitecture'intheon-linedocumentation).
CONFIGURINGINSTANCE-LEVELSETTINGS
SentryOne User Guide | 256
Wheneveryousingle-clickonanInstancenodeintheNavigator,theConditionsandSettingspanewillautomaticallyrefreshtodisplayallconditions,actionsandsettingsfortheselectedInstance.AnychangesmadeherewillapplytotheselectedInstanceonly,overridinganygloballyconfiguredsettings.Likewise,Instance-levelsettingscanbeoverriddenattheobjectlevelbyselectinganobjectnodeintheNavigator.
10.6 EventProviders
AneventproviderisamodulewhichenablesSentryOnetocommunicatewithandtranslatedatafromaneventstoreoveraneventstoreconnectionintoacommonformatwhichcanbeusedbythevariouspartsoftheSentryOnesystem,includingcalendars,graphs,andnotifications.ASentryOneeventproviderisanalogoustoanOLEDBproviderorODBCdriver.Therearethreetypesofeventproviders:Schedulers,ExecutionEngines,andEventLogs.
Schedulerprovidersenableinterfacingwiththenativeschedulerlogs,suchasforSQLServerAgentorWindowsTaskScheduler.
Executionengineprovidersconnectwiththenativestoresforexecutionenginesforcollectinghistoricalinformation,andactivestatusinformationifsupportedbytheprovider.Notallproviderssupportactivestatusqueries.
Eventlogprovidersenabletranslationofstatuseventdatacontainedinalog-typestores,suchasfortheSQLAgentAlertlogortheWindowsEventLog.
SentryOneshipswithseveralproviders,including:
EventProvider ProviderType
SQLServerAgent Scheduler
SQLServerAgentJob ExecutionEngine
SQLServerAgentAlert EventLog
MaintenancePlan ExecutionEngine
ReportingServices ExecutionEngine
WindowTaskScheduler Scheduler
SentryOneutilizesa“plug-in”architecturewhichallowsfuturemodulestobeaddedon,typicallywithoutrequiringinstallofanewversionoftheSentryOnesoftware.
10.7 EventSources
SentryOne User Guide | 257
Aneventsourcerepresentsauniqueinstanceofaneventprovideroperatingoverasingleeventstoreconnection.InSentryOne'sNavigatorpane,everysub-nodeunderneathaSQLServernoderepresentsauniqueeventsource.
BelowisacurrentlistingofalleventsourcescurrentlysupportedbySentryOne,alongwithitsassociatedeventobjects,providersandInstances:
Item NavigatorNode EventProvider InstanceType
SQLServerAgentJobs Jobs SQLServerAgentJob SQLServer
SQLServerAgentAlerts Alerts SQLServerAgentAlert SQLServer
SQLServerAgentLog SQLServerAgentLog
SQLServerAgent SQLServer
MaintenancePlans MaintenancePlans MaintenancePlan SQLServer
ReportingServicesReports ReportingServices ReportingServices SQLServer
WindowsTasks Tasks WindowTaskScheduler
WindowsInstance
WindowsEventLogs WindowsEventLogs WindowsEventLog WindowsInstance
10.7.1 SQLServerAgentJobs
SQLServerAgentJobsarelistedforeachSQLServerInstanceundertheJobsnode.Expandthenodetoviewthelistofjobs,orsingle-clickthenodetoviewacalendarforalljobs.TheSQLServerAgentJobeventproviderisusedbehindthescenestoaccessjobmetadata,history,andactivestatusinformation.
UsingtheSentryOneClient,youcanperformallofthesametasksrelatedtojobsthatyouwouldpreviouslydoviaSSMS,plusmanymorefeaturessuchasvisualscheduling,performancemonitoring,reporting,queuingandchaining.
10.7.2 SQLServerAgentAlerts
SQL SERVER AGENT ALERTSSQLServerAgentAlertsarelistedforeachSQLServerInstanceundertheAlertsnode.Expandthenodetoviewthelistofalerts,orsingle-clickthenodetoviewacalendarforallalerts.TheSQLServerAgentAlerteventproviderisusedbehindthescenestoaccessalertmetadataandhistoryinformation.
OutoftheboxSentryOnesupportsSQLServerAgenteventalerts,butSentryOnecanbeconfiguredtoalertyouonSQLServerAgentWMIeventalerts.Additionally,SentryOnecanalertyouaboutgeneralperformanceconditions,pleaseseetheSettingupAutomatedPerformanceAlertingKBarticle.
SentryOne User Guide | 258
NOTE:InordertoenableserveralertcollectionandnotificationwithouttheuseofagentsoneachSQLServer,SentryOnemustinstallonesimplejob(SentryOneAlertTrap)andstoredprocedure(msdb.dbo.spTrapAlert_20),andonesmalltable(msdb.dbo.SQL_Sentry_AlertLog_20)oneachwatchedserver.
SentryOnemustalsomakeaminorconfigurationchangetoeachserveralertinordertoenablealertcollectionandnotification-the“Executejob”settingisupdatedtousethe“SentryOneAlertTrap”job.Ifanalertisalreadysettoexecuteanotherjob,the“Executejob”settingsforthatalertwillnotbeupdated,andSentryOnewillnotbeabletogeneratenotificationsforthealert.
Oneofthemostcommonreasonsthe“Executejob”settingmayalreadybesettoajobisforloggingand/ornotificationpurposes,inwhichcaseSentryOnemaybeabletosafelyassumecontrolofthisfunction.SomeoftheadvantagesofusingSentryOneinsteadarethatitsloggingandnotificationprocessesarecentralized(versusdistributedoneachserver),theyarenotMAPI-dependent,andtheycaneasilybemaderedundantbyusingmorethanoneSentryOneMonitoringService.
AcompletelistofobjectsSentryOneplacesonawatchedservercanbefoundhere.
NOTE: In order to watch alerts on SQL Server 2005 and above Instances, token replacementmust be enabled for the SQL Server Agent. This is disabled by default as a security precaution. More information on this setting can be found in SQL Server Books Online. You can alsoconfigure SentryOne to auto-enable SQL Agent tokens at the Global and Instance level.
10.7.3 ReportingServicesReports
IfaReportingServicesdatabaseexistsonaSQLServer,theReportingServicesnodewillbedisplayedundertheSQLServerAgentnode,underwhichallreportsarelistedbyname.Expandthenodetoviewthelistofreports,orsingle-clickthenodetoviewacalendarforallreports.TheReportingServiceseventproviderisusedbehindthescenestoaccessreportmetadataandhistoryinformation.
Forscheduledreports,ReportingServicesjobsarelistedundertheJobsnodeusingacombinationofthereportnameandscheduletype.Keepinmindthatnotallreportshaveschedules,andsomereportshavemultipleschedules,sotheassociatedobjectnodesshownunderJobsandReportingServicesnodesmaynotmatchexactly."Shared"reportscheduleswillbelistedundertheJobsnode.
ReportsaredisplayedontheCalendarbyafriendlyname,andoffermanydetailsthroughtheirpopupwindow.
SentryOne User Guide | 259
10.7.4 SQLServerAgentLog
TheSQLServerAgentLognodeislistedundereachSQLServerInstancenode.Single-clickthenodetoviewacalendarforallSQLServerAgentevents.TheSQLServerAgenteventproviderisusedbehindthescenestoaccessthishistoryinformation.
10.7.5 WindowsTasks
WinSentrysupportstheTaskSchedulerEventSource.WindowsTasksarelistedforeachWindowsInstanceundertheTasksnode.Expandthenodetoviewthelistoftasks,orsingle-clickthenodetoviewacalendarforalltasks.TheWindowsTaskSchedulereventproviderisusedbehindthescenestoaccesstaskmetadata,history,andactivestatusinformation.
IMPORTANT: Windows Vista introduced Task Scheduler 2.0. Task Scheduler 2.0 isbackwards compatible with Task Scheduler 1.0, however, Task Scheduler 1.0 is not forwardscompatible with Task Scheduler 2.0. For this reason, in order to Watch or Synchronize TaskScheduler 2.0 connections, you must have a SentryOne Monitoring Service and SentryOneClient running Windows Vista or higher.
Windows 8 and Windows 2012 also introduced changes to Task Scheduler. In order toWatch or Synchronize Windows 8 and Windows Server 2012 Instances, you must havea SentryOne Monitoring Service and SentryOne Client running Windows 8 or Windows 2012.
SentryOne User Guide | 260
SPECIFYINGNON-ZEROSUCCESSCODESFORWINDOWSTASKSSomeTaskSchedulertasksdonotreturn"0"forsuccess.Inthesecases,WinSentrymaymisinterpretthisnon-zeroexitcodeasataskfailure.Inordertopreventthese"falsenegatives",youmayspecifyanexacttextstringthatWinSentryistorecognizeasthesuccesscodeforthatparticulartask.Todoso,clickonthetaskintheNavigatorpaneandenterthevaluenextto"Exitcodeiftaskwassuccessful".
NOTE:Occasionally, Windows Tasks may show as running even after they have completed. Forthis reason, while a task is running, theCloseRunningEventcontext menu item is available tomanually close this event. This menu item should only be used when you are sure the task hascompleted, but shows as running in Win Sentry .
10.7.6 WindowsEventLogs
WinSentryincludestheWindowsEventLogsEventSource.ThemonitoringoftheApplication,Security,andSystemEventlogsissupported.WhenyoumonitoraWindowsInstancetheApplicationandSystemLogsareinitiallywatched.IfyouwouldliketomonitortheSecuritylog,simplyselectWatchWindowsEventLogfromtheSecuritynode'scontextmenu.
TheWindowsEventLogsSourcehasadefaultHistoryFilterinplace.ThedefaultfilteristailoredtocaptureinformationaboutbothSentryOneandSQLServer.WiththeHistoryFilteryoudefineruleswhichcontrolexactlywhattypesofeventstheMonitoringServicewritesintoEventHistoryconcerningtheWindowsEventlogs.IfaneventdoesnotmeetthecriteriayouhavedefinedintheHistoryFilter,informationaboutthateventisnotwrittentoyourSentryOneDatabase.Youmaychangethefilterasneededtobestfityourenvironment.
TheWindowsEventLogsHistoryFiltercanbeaccessedintheSettingspaneasfollows:
1. SelecttheWindowsInstancenodeintheNavigatorpane.2. OpentheSettingspane(Viewmenu->Settings).3. SelectWindowsEventLogsSourcefromthedropdownmenu.
Note:MonitoringtheWindowsEventLogsissupportedforWindowsVistaorhigher.
10.8 EventObjects
Atahighlevel,aneventobjectissimplyanyjob,task,orothereventtypethatcanbemanagedusingSentryOne.Therearetwogeneraltypesofevents:activeeventobjectsandstatusevents.Thetwoareactuallycompletelydifferent,withtheexceptionthattheireventinstancesbothoccuratsomemeasurablepointintime,andthereforecanberepresentedchronologicallyincalendarandlistviews.Athirdsub-typeishybrideventobjectswhichcontainsomecharacteristicsofbothactiveand/orstatusevents.
WHYISITIMPORTANTTODIFFERENTIATETHETYPESOFEVENT
SentryOne User Guide | 261
OBJECTS?WhenyouviewacalendarinSentryOne,youwillseeacombinationofvarioustypesofactiveandstatuseventinstances.ActiveeventobjectsincludeSQLAgentJobs,MaintenancePlans,andReportingServicesReports,alongwithWindowsTaskSchedulerTasks.StatuseventsincludeSQLAgentAlertsandSQLAgentLogrecords.Sincebusycalendarscanincludesomeoralloftheseeventtypes,it'simportanttobeabletodifferentiatethemtomakethemostoftheinformationpresented.TheSentryOneClientfacilitatesthisbyindicatingthetypeofeventobjectusingasmallglyphoneacheventinstance,aswellasineventinstancepopupwindows.
It'salsoimportanttounderstandwhy,forexample,activeeventobjectshaveruntimeandperformancegraphs,aswellasruntimeandperformanceconditions,whilestatuseventsdonot.
EventObjects Type InstanceType
SQLServerAgentJob Active SQLServer
SQLServerAgentAlert Status(hybrid) SQLServer
SQLServerAgentLogRecord Status SQLServer
MaintenancePlan Active(hybrid) SQLServer
ReportingServicesReport Active SQLServer
WindowsTask Active Windows
WindowsEventLogsEvent Status Windows
10.8.1 ActiveEventObjects
Anactiveeventobjectisalsocommonlyreferredtoasajoboratask,andcontainsalloftheinformationnecessarytoperformsomemeasurablework.Thiscanincludeinstructionsinsomescriptinglanguage(T-SQL,VBScript,etc.),connectioninformation,configurationparameters,etc.Activeeventsalwayshaveastarttimeandanendtime,i.e.,theyhaveduration,andtheyarealsoschedulable.SQLAgentJobsandWindowsTasksareexamplesactiveeventobjects.
10.8.2 StatusEvents
Astatuseventrepresentsthediscreteoccurrenceofsomeconditionofaprocess,usuallyapersistentprocess.Statuseventsdonothaveduration,theyarenotschedulable,andtheydonotperformanymeasurablework.Forexample,theSQLServerAgentLogcontainsvariousstatuseventsgivenoffbytheSQLServerprocessatspecificpointsintime.
STATUSEVENTOBJECTSAstatuseventobjectisanystatuseventthatispredefinedand/orconfigurable,suchasaSQL
SentryOne User Guide | 262
ServerAgenterrorcondition.MostentriesintheSQLAgentLogsareinstancesofastatuseventobject,suchasthisone:[264] An attempt was made to send an email when no email session hasbeen established
Althoughthiseventobjectisnot“configurable”,itrepresentsanerrorconditionthatispredefinedandstatic.
ADHOCSTATUSEVENTSNotallstatuseventscanbepre-defined,forexamplean“adhoc”messageforatransactionlogbackuprecordedintheSQLServerLog:Log backed up: Database: Northwind, creation date(time):2004/07/27(11:51:24), first LSN: 238:292:1, last LSN: 238:292:1, numberof dump devices: 1, device information: (FILE=1, TYPE=DISK: {'D:\ProgramFiles\Microsoft SQL Server\MSSQL\BACKUP\
Inthiscaseadiscretestatuseventisloggedastheresultofsomeprocess,butdoesnotspecifyastartorendtime,noristheoutputconstant,i.e.,itchangeseverytime.Itisalsonotentirelypre-definednorisitconfigurable;thereforeweconsiderthisanadhocstatusevent.
10.8.3 HybridEventObjects
Hybrideventobjectsarethosethatdon'tnecessarilyfallcleanlyintotheactiveorstatuseventcategories.
Forexample,aSQLAgentMaintenancePlanisanactiveeventobjectthatiscomprisedofseveralotheractiveeventobjects–SQLAgentjobs.Theplanitselfdoesn'tactuallydoanywork,thejobsdo;theyhandlethevariousactivitiesassociatedwiththeplansuchasbackups,optimizations,etc.Inthiscasethejobsactassurrogatesfortheplanitself.Theplandoes,however,containconfigurationinformation,aswellasanexecutionengineandlog,anditsassociatedjobsdoworkandhaveduration.Thereforeweconsidertheplanavariantofanactiveeventobject.Ifitdidnothaveitsownconfigurationinfoorexecutionlog,itwouldsimplybeacollectionofjobs.
ASQLAgentAlertisavariantofastatuseventobject.AlertscanbetriggeredbyvariousconditionsoftheSQLServerprocess,suchasafulltransactionlog,acorruptdatabase,etc.SQLServerlogsastatuseventtotheWindowsApplicationLog,thenSQLAgentpicksitupandfiresanydefinedAlertsthatmatchthecondition.AlthoughAlertsdon'tactuallyhavetheirownlog,whentheyfireSentryOneisabletocapturetheoutputasadiscretestatuseventinstanceandlogittoatableinMSDB,effectivelyaneventlog.SQLAgentAlertsarereallymoreofatoolfortheDBAtodefinetheeventsforwhichtheywanttobenotifiedortakesomeotheraction--theyaren'treallystatuseventobjectsinthestrictestsense,butforourpurposesithelpstothinkofthemthatway.
10.8.4 EventInstances
Aneventinstanceisanyindividualhistoricalorfutureoccurrenceofanactiveeventobjectorstatusevent.EventinstancescorrelatetotherectangularplaceholdersdisplayedonaSentryOnecalendar,orthemasterrecordsshowninalistview.AnindividualexecutionofaSQLAgentjob
SentryOne User Guide | 263
representsanactiveeventinstance.EveryoccurrenceofaSQLAgenterrorintheSQLAgentlogsisanindividualstatuseventinstance.
SentryOne User Guide | 264
11 Appendix
11.1 sp_sentry_mail_20
WhenaSQLServerInstanceisfirstsettowatchedstatuswithSQLSentry,SentryOneauto-installsastoredprocedureintheMSDBdatabasenamedsp_sentry_mail_20thatisintendedtobeaninterfacecompatiblereplacementforxp_sendmail.sp_sentry_mail_20supportsalmostallofthefunctionalityofxp_sendmail,includingsendingqueryresultsasattachments.
AsidefromusingSMTP,notMAPI,sp_sentry_mail_20isastandardstoredprocedure,notanextendedstoredprocedure,soitdoesn'trequireinstallationofanydll’s,scripts,orothercomponentsoneverySQLServer.Thus,theconfigurationandmaintenancerequirementsaredramaticallyreducedoverxp_sendmailandotherxp_sendmailreplacements.Inaddition,becausesp_sentry_mail_20hasnodependenciesonMAPIorSQLMailitisinherentlymorereliablethanxp_sendmail.
AfterwatchingtheSQLServerInstance,allthat'srequiredisreplacinganycallstoxp_sendmailwithsp_sentry_mail_20asshownbelow.
NOTE:For sp_sentry_mail_20 to function,SMTPsettingsmust be configured first.
SP_SENTRY_MAIL_20PARAMETERSAlistofsp_sentry_mail_20parametersisshowninthetablebelow.Allparametersareoptionalexceptfor@recipients.Parametersareidenticaltothoseusedbyxp_sendmail,withtheexceptionoftwonewoptionalparameters(@from_addressand@email_format).
Parameter Description
@recipients Emailaddressesofrecipients,delimitedbysemicolons.
@message Thebodyofthemessage.
@queryA SQL statement to be executed. The results of the query will beincluded in the body of the email by default, or as an attachment if@attach_resultsisTRUE.
@attachments Asemi-colondelimitedlist of files toattachtothemessage.Currentlyignored.Plannedforfutureversion.
@copy_recipients Emailaddressesofrecipientstobecopied,delimitedbysemicolons.
@blind_copy_recipients Email addresses of recipients to be blind copied, delimited bysemicolons.
@subject Subjectlineofthemessage.
@type Ignored. used by xp_sendmail only, but provided for xp_sendmailcompatibility.
@attach_resultsIfTRUE,thequeryresultswillbeattachedasatextfile.
If FALSE (default), the results will be included inline in the body of themessage.
SentryOne User Guide | 265
@no_outputIfTRUE,nooutputisreturnedtotheclientwhenthemessageissent.
IfFALSE(default),"Mailsent."isreturnedtotheclient
@no_header IfFALSE(default),nocolumnheadersareincludedinthequeryresults.
@width The line width for rows in the query output. 0 (default) indicates nowidthlimitshouldbeused.
@separator Columnseparatorvaluetouseforthequeryoutput.
@echo_error Ignored. used by xp_sendmail only, but provided for xp_sendmailcompatibility.
@set_user Theusercontextunderwhichtoexecutethequery.Currentlyignored.Plannedforfutureversion.
@dbuse Thenameofdatabaseinwhichtorunthequery.
@from_address The"mailfrom"addresstouseforthemessage.
@email_format Allowedvaluesare'text'or'html'only.
REPLACINGCALLSTOXP_SENDMAILSimplychangecallstoxp_sendmailtomsdb..sp_sentry_mail_20asshownbelow:
Oldcall:
execxp_sendmail@recipients='[email protected]',…
Newcall:
execmsdb..sp_sentry_mail_20@recipients='[email protected]',…
EXAMPLE:RESULTSEMBEDDEDINMESSAGEBODYexecmsdb..sp_sentry_mail_20
@recipients='[email protected]',
@subject='TitlesList',
@Message='TitlesListReport',
@query='SELECTtitle_id,titleFROMtitles',
@dbuse='pubs'
Results:
SentryOne User Guide | 266
EXAMPLE:COMMA-SEPARATEDRESULTSATTACHEDTOMESSAGEexecmsdb..sp_sentry_mail_20
@recipients='[email protected]',
@subject='TitlesList',
@Message='TitlesListReport',
@query='SELECT*FROMtitles',
@dbuse='pubs',
@attach_results='TRUE',
@separator=','
Results:
SentryOne User Guide | 267
11.2 sp_sentry_dbmail_20
WhenaSQLServer2005andaboveInstanceisfirstsettowatchedstatuswithSQLSentry,SentryOneauto-installsastoredprocedureintheMSDBdatabasenamedsp_sentry_dbmail_20thatisintendedtobeaninterfacecompatiblereplacementforsp_send_dbmail.sp_sentry_dbmail_20supportsallofthefunctionalityofsp_send_dbmail,withouttheneedtoconfigureeachservertouseit.Thus,theconfigurationandmaintenancerequirementsaredramaticallyreducedoversp_send_dbmail.
AfterwatchingtheSQLServer2005andaboveInstance,allthat'srequiredisreplacinganycallstosp_send_dbmailwithsp_sentry_dbmail_20asshownbelow.
NOTE:For sp_sentry_dbmail_20 to functionSMTPsettingsmust be configured first.
SP_SENTRY_DBMAIL_20PARAMETERSAlistofsp_sentry_dbmail_20parametersisshowninthetablebelow.Allparametersareoptionalexceptfor@recipients.Youmustspecifyatleastoneof@body,@query,@file_attachments,[email protected],sp_sentry_dbmail_20returnsanerror.Parametersareidenticaltothoseusedbysp_send_dbmail.
Parameter Description
@profile_name
ProfilesarerequiredtobesetupinSQLServer2005andabovebeforeusingmailfunctionality.ProfilesareNOTrequiredforSentryOne,thereforethisparameterisoptionalforsp_sentry_dbmail_20.
@recipients Emailaddressesofrecipients,delimitedbysemicolons.
@copy_recipients Emailaddressesofrecipientstobecopied,delimitedbysemicolons.
@blind_copy_recipients Emailaddressesofrecipientstobeblindcopied,delimitedby
SentryOne User Guide | 268
semicolons.
@subject Subjectlineofthemessage.
@body Thebodyofthemessage.
@body_format Theformatofthemessagebody.MaybeTEXTorHTML.
@importance Theimportanceofthemessage.MaybeLow,Normal,orHigh.
@sensitivity Thesensitivityofthemessage.MaybeNormal,Personal,Private,orConfidential.
@file_attachments Asemi-colondelimitedlistoffilestoattachtothemessage.
@queryASQLstatementtobeexecuted.Theresultsofthequerywillbeincludedinthebodyoftheemailbydefault,orasanattachmentif@attach_query_result_as_file=1.
@execute_query_database Thenameofdatabaseonwhichtorunthequery.
@attach_query_result_as_fileIf1,thequeryresultswillbeattachedasatextfile.
If0(default),theresultswillbeincludedinlineinthebodyofthemessage.
@query_attachment_filename
Thefilenametousefortheresultsetofaquerywhenattached.
Ifnoneisspecifiedandtheaboveparameter=1,anarbitraryfilenamewillbeused.
@query_result_headerIf1(default),thequeryresultswillincludecolumnheaders.
If0,theywillnot.
@query_result_width Thelinewidth,incharacters,forrowsinthequeryoutput.
@query_result_separatorColumnseparatorvaluetouseforthequeryoutput.
Thedefaultis''.(space)
@exclude_query_outputIf1,nooutputisreturnedtotheclientwhenthemessageissent.
If0(default),"Mailsent."isreturnedtotheclient
@append_query_errorIf1,themessageissentwiththequeryerrorinthebody.
If0(default),themessageisnotsent.
@query_no_truncateIf1,queryresultsarenottruncated.
If0(default),columnstruncateto256characters.
@mailitem_id Optionaloutputparameterreturnsthemailitem_idofthemessage.Themailitem_idisoftypeint.
@from_address The"mailfrom"addresstouseforthemessage.
SentryOne User Guide | 269
REPLACINGCALLSTOSP_SEND_DBMAILSimplychangecallstosp_send_dbmailtomsdb..sp_sentry_dbmail_20asshownbelow:
Oldcall:
execsp_send_dbmail@recipients='[email protected]',…
Newcall:
execmsdb..sp_sentry_dbmail_20@recipients='[email protected]',…
EXAMPLE:RESULTSEMBEDDEDINMESSAGEBODYexecmsdb..sp_sentry_dbmail_20
@recipients='[email protected]',
@subject='TitlesList',
@body='TitlesListReport',
@query='SELECTtitle_id,titleFROMtitles',
@execute_query_database='pubs'
Results:
SentryOne User Guide | 270
EXAMPLE:COMMA-SEPARATEDRESULTSATTACHEDTOMESSAGEexecmsdb..sp_sentry_dbmail_20
@recipients='[email protected]',
@subject='TitlesList',
@body='TitlesListReport',
@query='SELECT*FROMtitles',
@execute_query_database='pubs',
@attach_query_result_as_file=1,
@query_result_separator=',',
@query_attachment_filename='queryresults2.txt'
Results:
SentryOne User Guide | 271
11.3 WatchedServerObjects
SENTRYONEWATCHEDSERVEROBJECTSWhenaSQLServerinstanceiswatchedbySentryOne,thebelowobjectsareplacedonthetargetserver.Toremovetheseobjects,seetheUninstallingSentryOnetopic.
TABLES(MSDB):SQLSentryObjectVersion_20
SQLSentryAlertLog_20
SQLSentryDBEmails_20(SQLServer2005+)
SQLSentryDBEmail_Attachments_20(SQLServer2005+)
SQLSentryEmails_20
SQLSentryLogCache_20
SQLSentryLogData_20
SQLSentryObjectVersion_20
SQLSentryQueueLog_20
STOREDPROCEDURES(MSDB):spGetBlockInfo_20
spGetProcedureStatsData
spGetQueryStatsData
spGetBlockInfo_20
SentryOne User Guide | 272
spGetJobInfo_20
spQueueHeartbeat_20
spQueueJob_End_20
spQueueJob_Start_20
spQueueMonitor_20
spReadLogFile_20
spSetupAlertsTrap_20
spTrapAlert_20
sp_sentry_mail
sp_sentry_mail_20
sp_sentry_dbmail_20(SQLServer2005+)
SQLAGENTJOBS:SQLSentry2.0AlertTrap
SQLSentry2.0QueueMonitor
SENTRYONEMONITORINGOBJECTSINAZURESQLDATABASETARGETSWhenanAzureSQLDatabaseiswatchedbyDBSentry,theuserisgiventheoptiontoallowsomemonitoringobjectstobecreatedinthetargetdatabase.IftheseobjectsareallowedtheywillbecreatedunderaSentryOneschema.Toremovetheseobjects,seetheUninstallingSentryOnetopic.Someofthetableswillhaveuniqueidentifiersonthemafterthetablename(indicatedwith'...').
TABLES(TARGETDATABASE)SQLSentry.SQLSentryObjectVersion_20
SQLSentry.ProcedureStats_...
SQLSentry.ProcedureStats_...
STOREDPROCEDURES(TARGETDATABASE)SQLSentry.spGetProcedureStatsData
SQLSentry.spGetQueryStatsData
11.4 ExecuteActionParameters
ExecuteSQLandExecuteProcessactionsallowforthepassingofparametersinthecommandtext.
SYSTEMPARAMETERSThereareninesystemparametersthatareavailableinSentryOne.Belowisalistofthesystemparametersalongwithadescriptionoftheinformationtheyhold.
SystemParameter Description
SentryOne User Guide | 273
ServerName* NameoftheInstanceonwhichtheobjectexists
ObjectName Nameoftheobject
ObjectType SQLServerAgentJob,MaintenancePlan,etc.
Owner* Owneroftheobject
StepName* Nameassignedtothestep
Message* Outputtextassociatedwiththestep
Category* Categoryasdefinedinthepropertiesoftheobject
Condition Failure,Completed,etc.
MessageText ProvidingthebodytextofthestandardSentryOnenotification.
*AvailableforGeneralActionsonly.
Theseparametersarepassedtothecommandtextbysurroundingtheparameternamewith<%%>,suchas<%ServerName%>.
USERPARAMETERSUserdefinedparameterscanalsobedefinedintheoutputtextofanevent.Thesyntaxwithintheoutputmustbe:PARAM=12345,PARAM:12345,orPARAM:12345.Youwouldthenuse<%PARAM%>withinthecommandtextoftheexecuteactiontopassthatvalue.
EXAMPLEYourorganizationkeepsatableonitsIssuesdatabasecalledFailedAccountingJobs,whichhascolumnsforJobOwner,JobName,LastOrderProcessed,andTime.TheAccountingjobscreatestepoutputthatrecordsthelastOrderIDprocessedincaseoffailureusingOrderIDastheuserdefinedparameter.YoucouldsetupanExecuteSQLactionontheSQLAgentJob:FailureconditionthatpointstotheserverthatholdstheIssuesdatabasewithaT-SQLcommand:
InsertIntoIssues..FailedJobs(JobOwner,JobName,LastOrderProcessed,Time)
VALUES('<%Owner%>','<%ObjectName%>','<%OrderID%>',GetDate())
Thevaluesfortheowner,nameoftheobject,andOrderIDwillautomaticallybeprovidedbySentryOneandinsertedintothecommandwhenitruns.
NOTE:
User defined parameters may not be retrievable from the output of retried SQL Agent Jobsteps.
SentryOne User Guide | 274
When passing the MessageText parameter, double quotes may be needed. Also rememberto use SET QUOTED_IDENTIFIER OFF in this case.
ADDITIONALOPTIONSOtheroptionsareavailablefortheStepNameandMessageparameters.TheStepNameandMessagecanalsobepassedusingtheformat<%StepName:[Identifier]%>or
<%Message:[Identifier]%>.Ifthe[Identifier]isanumberthenthevaluefromthatparticularstepIDisused,startingwithstep1.
Additionally,the[Identifier]canalsobeoneofthefollowingvalues:
FirstStep–Thevalueforthestepnameormessageofthefirstcompletedstep.LastStep–Thevalueforthestepnameormessageofthelastcompletedstep.FirstFailure–Thevalueforthestepnameormessageofthefirstfailedstep.LastFailure–Thevalueforthestepnameormessageofthelastfailedstep.
Example:INSERTINTOTABLE(MyCustomMessage)VALUES('Thelaststepfailurewasonstep<%StepName:LastFailure%>andthetextforthatwas
<%Message:LastFailure>')
11.5 SentryOneDatabaseMaintenance
JustaswithanyotherSQLServerdatabase,itisimportantthatregularmaintenanceactivitiesbeperformedontheSentryOnedatabasetoensureoptimalperformance.Thefollowingaresuggestedpracticesforperformingsuchmaintenance.
WEEKLY
INDEXREBUILDSWeeklyIndexrebuildsarerecommended.SentryOneFragmentationManagercanbeusedtohelpyoumakeintelligentdecisionsaboutindexmanagementinyourenvironment.FormoreinformationseetheFragmentationManagertopic.
NIGHTLY
DATABASEINTEGRITYCHECKSDatabaseintegritychecksshouldbeperformedeverynight.TheyalsocanbescheduledthroughamaintenanceplanandwillthenbereflectedintheSentryOneClient.
INDEXDEFRAGMENTATION
SentryOne User Guide | 275
SentryOneFragmentationManagercanbeusedtohelpyoumakeintelligentdecisionsaboutindexmanagementinyourenvironment.FormoreinformationseetheFragmentationManagertopic.
CONFIGURINGTHESENTRYONEDATABASEMAINTENANCEWINDOWTheMaintenanceWindowshouldalsobeconfiguredwiththeaboveactivityscheduledwithintoavoidexcessiveFailsafeNotificationsduetotheseactivities.
11.6 RelocatingtheSentryOneDatabase
MovingtheSentryOneDatabasetoanewSQLServerinstanceisastraightforwardprocess.Followingarethestepsrequiredtoaccomplishthis:
1. RetrievetheinstancenameforthenewSQLServerbyrunningSELECTSERVERPROPERTY('SERVERNAME')againstit.Yourlicensekeyisbasedonthisinstancename.
2. LogintotheCustomerPortalhttp://www.SentryOne.com/portal.UndertheLicenseMaintenancesection,selectView/ModifyExistingSentryOneLicenses.
a. InthePerpetualLicensessectionyouwillseeyourSentryOneLicenselisted.Clicktheplussymbolnexttotheinstancenametoexpandthelicensemanagementoptions.
b. SelecttheLicenseConfigurationtab.c. IntheSQLServerInstanceNamefieldenterthenewinstancenamefromStep1.d. IntheReasonForChangefieldenterasimplereasonforthechange.e. ClicktheUpdatebuttonandthelicensewillbeautomaticallyemailedtoyou.
3. Onceyouhavereceivedthenewkey,shutdownallSentryOneClientsandSentryOneMonitoringServices.
4. PerformafullbackupoftheSentryOneDatabase.5. DetachtheSentryOneDatabase.6. Movetheassociateddataandlogfiles.7. AttachtheSentryOneDatabasetothenewserver.8. OpentheSentryOneClientonanymachinewithaSentryOneMonitoringService.AfterfailingtolocatetheSentryOneDatabase,theConnectwindowshouldappear.EnterthenewlocationoftheSentryOneDatabase.TheSentryOneClientwillalertyouthatitneedstoberestartedtoconnecttothenewSentryOneDatabase.Onrestarting,youwillbeaskedforthenewlicensekey.
9. AftersuccessfullyapplyingthelicenseandstartingtheSentryOneClient,youwillneedtoruntheServiceConfigurationUtility,pointingtheMonitoringServiceatthenewSentryOneDatabase.TheServiceConfigurationUtilitycanbefoundintheSentryOneprogramgroup.AfterrunningtheServiceConfigurationUtilitybesurethattheMonitoringServicehasbeenrestarted.
10. Repeatsteps8and9onanyothermachineswithSentryOneMonitoringServices.Youwillnotbeaskedforthelicenseagain,however.
YoumaynowstartanyotherSentryOneClientandenterthenewSentryOneDatabaselocationwhenasked.
Don'tforgettosetupSentryOneDatabasemaintenanceonthenewserver.
SentryOne User Guide | 276
ToremoveanoldserverfromtheAllInstancesViewsothatyouwillnolongerbepromptedaboutitwhenopeningtheSentryOneClient:
1. SelecttheServerNameoftheserveryouwouldliketoremoveinthe“PleaseSpecifytheServerName”drop-downlist,andpressShift+Delete.
2. Thenewservershouldnowbetheonlyonelistedinthedrop-downlist.UsetheConnectcommandandconnecttothenewinstallation.
ThenexttimeyouopentheClientitwillautomaticallyconnecttothenewinstallation.
11.7 WatchingServersAcrossDomains
ItispossibletowatchInstancesacrossdomainswithSentryOneevenwhenthereisnotrustrelationshipbetweenthem.Thebestoptiontoachievethisdependsontheresourcesavailableandnumberofserversyouwishtowatch.
ONEMONITORINGSERVICEIfyouonlyhavetheresourcestoinstalloneSentryOneMonitoringServiceforyourenvironment,oronlyhaveacoupleserversinnon-trusteddomainsyouwishtowatch,pass-throughauthenticationcanbesetuponeachserverintheotherdomain.ThisrequireseachwatchedserverontheotherdomaintohavealocalWindowsaccountthathastheidenticalloginandpasswordastheSentryOneMonitoringServiceservice'sdomainaccount.ThismustalsohavesysadminprivilegesonthewatchedSQLServerinstance.
MULTIPLESERVERSERVICESAnotheroptionistoinstallaSentryOneMonitoringServiceineachdomainwhereyouhaveserversyouwishtowatch.Thisonlyrequirespass-throughauthenticationtobesetupforeachMonitoringServicetothemachinewheretheSentryOneDatabaseisinstalled.YoucouldthencreateseparatesitesforeachMonitoringServicetoensurethattheyonlypolledtheserversintheirdomain.
11.8 HotKeyList
BelowarethehotkeysthatareavailableinSentryOne:Item Keys Notes
Help F1orCtrl+H OpenstheUserGuide.
Save Ctrl+S Saveschangesmadeintheclient.
Close Ctrl+W Closestheactivetabintheclient.
Exit Ctrl+Q Closestheclient.
SentryOne User Guide | 277
UserPreferences Ctrl+O OpenstheUserPreferenceswindow.
Print Ctrl+P OpensthePrintwindow.
FindObject Ctrl+F OpenstheEventObjectSearchwindow.
TabScroll Ctrl+Tab Scrollsthroughopentabsintheclient.
SelectAll Ctrl+A Selectsallitemsinwindow(whereapplicable).
Copy Ctrl+C Copiesselecteditemstoclipboard(whereapplicable).
Paste Ctrl+V Pastesitemsfromclipboard(whereapplicable).
AddNote
Onnotedialog:
-New
-Save
-Delete
-Close
Ctrl+Alt+N
Onnotedialog:
-Ctrl+N
-Ctrl+S
-Ctrl+D
-Ctrl+C
Opensthenotesinterfacewhenanapplicableobjectisselected.
Onnotedialog:
-Opensnewnote.
-Savesnote.
-Deletesnote.
-Closesnotedialog.
HistoryList(oneday) Ctrl+Alt+H OpensthehistoryListviewforonedaywhenanapplicableobject
Item Keys Notes
SentryOne User Guide | 278
isselected.Item Keys Notes
11.9 SentryOnePowerShellModule
TheSentryOneinstallationpackageincludesaPowerShellmodulewhichcanbeusedtomanageyourSentryOneenvironmentthroughPowerShell.Thistopicincludesawalkthroughofthatfunctionality.
NOTE:PowerShell3.0orhigherisrequiredtousethisfunctionality.
GETTINGSTARTEDThefirststepistoimporttheSentryOnePowerShellmodule.YoucanfindthemoduleintheSentryOneprogramdirectory.UsetheImport-Modulecommand.
Import-Module"C:\ProgramFiles\SentryOne\11.0\Intercerve.SQLSentry.Powershell.psd1"
Toverifythatthemoduleimportedcorrectly,runtheGet-Modulecommand.YoushouldseealistingforIntercerve.SentryOne.Powershell.
COMMANDSVariouscommandsareavailable,seethetablebelowformoreinformationabouteachcommand.
Command Description
Connect-SQLSentry
ThiscommandallowsyoutoconnecttoaspecificSentryOneinstallation,whichisrequiredbeforeanyotheractionscanbeperformed.Thiscommandisalsousefulfornavigatingbetweenrepositories.UsedinenvironmentswhichhavemorethanoneSentryOnerepository.
AvailableParameters:
DatabaseName
Login
Password
ServerName
UseIntegratedSecurity
Disconnect-SQLSentry
ThiscommandallowsyoutodisconnectfromaspecificSentryOneinstallation.UsefulforenvironmentswhichhavemorethanoneSentryOnerepository.
AvailableParameters:
SentryOne User Guide | 279
Get-SQLSentryConfiguration ViewBasicinformationaboutyourSentryOneConfiguration
Get-Connection
ViewConnectionsinyourenvironment
AvailableParameters:
ConnectionType
ID
Name
ObjectID
Get-Computer
ViewComputersinyourenvironment
AvailableParameters:
ComputerType
ID
Name
Get-Site
ViewSitesinyourenvironment
AvailableParameters:
ID
Name
Register-Computer
InordertobewatchedwithSentryOne,youmustfirstregisteraComputer
AvailableParameters:
ComputerType
Name
AccessLevel
DatabaseName
Login
Password
Port
TargetSite
UseIntegratedSecurity
Command Description
SentryOne User Guide | 280
AllowAzureRemoteObjectInstallation
NOTE:The-AllowAzureRemoteObjectInstallationparameterisONLYvalidforAzureSQLDatabasetargets.
Invoke-WatchComputer
WatchaComputerwithSentryOne.
AvailableParameters:
Computer
LicenseMode
Register-Connection
InordertobewatchedwithSentryOne,youmustfirstregisteraConnection.
AvailableParameters:
ConnectionType
Name
Login
Password
Port
TargetSite
UseIntegratedSecurity
Invoke-WatchConnection
WatchaConnectionwithSentryOne.
AvailableParameters:
Connection
Invoke-UnwatchConnection
StopwatchingaConnectionwithSentryOne.
AvailableParameters:
Connection
EXAMPLES<# Import the SentryOne PowerShell Module"#>Import-Module "C:\Program Files\SentryOne\11.0\Intercerve.SQLSentry.Powershell.psd1"<# Connect to a specific SentryOne Installation"#>Connect-SQLSentry -ServerName server.domain.com -DatabaseName SentryOne<# Get Information about your SentryOne Installation "#>Get-SQLSentryConfiguration<# Get Information about the Sites in your SentryOne Installation -use parameters to find information for a specific site "#>Get-Site
Command Description
SentryOne User Guide | 281
<# Get Information about the Connections (Instances) in your SentryOne Installation -use parameters to find information for a specific connection "#>Get-Connection<# Get Information about the Computers (Targets) in your SentryOne Installation -use parameters to find information for a specific connection "#>Get-Computer <# Get Information about the Connections in your SentryOne Installation -use parameters to find information for a specific connection "#>Get-Connection<# Register Computers (Targets), so that they can be watched in your environment"#>Register-Computer -ComputerType Windows -Name server.domain.com -AccessLevel FullRegister-Computer -ComputerType Windows - Name server.domain.com -AccessLevel Limited<# Register a Target that cannot utilize Windows Authentication (e.g., Azure SQL Database)"#>Register-Computer -ComputerType AzureSqlDatabase -Name example.database.windows.net -DatabaseName dbName -Login username -Password password -AccessLevel Full -UseIntegratedSecurity 0<# Register Connections (Instances), so that they can be watched in your environment"#>Register-Connection -ConnectionType SqlServerAnalysisServices -Name server.domain.comRegister-Connection -ConnectionType SqlServer -Name server.domain.com<# Watch Windows Computer (Target) with Performance Analysis and Event Calendar | -Pipe in the Computer"#>Get-Computer -Name server.domain.com -NamedServerComputerType Windows | Invoke-WatchComputer<# Watch Hyper-V Host (Target) with Performance Analysis and Event Calendar (core-based licensing) | -Pipe in the Computer"#> Get-Computer -Name server.domain.com -NamedServerComputerType Windows | Invoke-WatchComputer -LicenseMode CoreBased<# Watch SQLServer Connection (Instance) with Performance Analysis and Event Calendar | -Pipe in the Connection "#>Get-Connection -Name server.domain.com -NamedServerConnectionType SqlServer | Invoke-WatchConnection<# Watch SSAS Connection (Instance) with Performance Analysis and Event Calendar | -Pipe in the Connection "#>Get-Connection -Name server.domain.com -NamedServerConnectionType SqlServerAnalysisServices | Invoke-WatchConnection
<# Unwatch Windows computer (Target)"#>Get-Computer -Name server.domain.com -NamedServerComputerType Windows | Invoke-UnwatchComputer<# Unwatch SSAS connection"#>Get-Connection -Name server.domain.com -NamedServerConnectionType SqlServerAnalysisServices | Invoke-UnwatchConnection<# Unwatch SQLServer connection"#>Get-Connection -Name server.domain.com -NamedServerConnectionType SqlServer| Invoke-UnwatchConnection<# User cmdlets#> Register-User -FirstName Test -LastName user -Email [email protected] -PagerAddress [email protected] -Description Tester -Login domain\username Get-User -FirstName Test Get-User -Name "Test User" Disable-User -Name "Test User" Enable-User -Name "Test User" Unregister-User -Name "Test User"<# Group cmdlets#> Register-Group -Name "Test Group" -Description "A Group" -Login Domain\TestGroup Get-Group -Name "Test Group" Disable-Group -Name "Test Group" Enable-Group -Name "Test Group" Unregister-Group -Name "Test Group" <# User = and - to the Group cmdlets#> Get-User -Name "Test User" | Add-GroupUser -GroupName "Test Group" Get-User -Name "Test User" | Remove-GroupUser -GroupName "Test Group"
SentryOne User Guide | 282
12 ContactInformation
CUSTOMERPORTALAccesstotheSentryOneCustomerPortalisavailablearoundtheclock,allowingyoutoretrieveabackuplicensekey,expandyourenterprisebyaddingmorelicensesorevenmodifyanexistinglicensekeyinthecaseofhardwarechanges.Inaddition,theCustomerPortaliswhereproductupdatesanddocumentationcanbefound.Thepagehttp://www.SentryOne.com/portalcanbeusedtoactivateandlogintoyouraccount.
SUPPORTIfyouhaveanytechnicalquestions,orforhelpwithinstallationorconfigurationissues,pleasedon’thesitatetocontactus:
Email:[email protected]
Phone:704-895-6241
TollFree:855-775-7733
SUPPORTFORUMAdditionalinformationaboutSentryOnecanbefoundattheSentryOnesupportforum:http://support.sentryone.com
DEMOSTosignupforoneofourregularlyscheduledpublicwebinardemospleasevisit:
http://www.SentryOne.com/company/news-events#webinars
SALESIfyouhaveanypre-salesquestions,orwouldliketoplaceanorder,pleasecontactoursalesteamdirectly:
Email:[email protected]
Phone:704-895-6241
FEEDBACKWealwayswelcomeyourfeedbackonthisguideandSentryOneingeneral.Pleaseemailanyfeedback,ideas,[email protected]
SentryOne User Guide | 283
13 Index
ActionBehaviors,109-111
Actions,103-109
ActionsLog,61-63
ActiveEventObjects,262
AddingNotes,71-73
AdvisoryConditions,96-102
AdvisoryConditions,96-102
AlertingandResponseSystem,77-78
AllTargets,36-38
AlwaysOn,217-224
Appendix
ExecuteActionParameters,273-275
HotKeyList,277-279
RelocatingtheSentryOneDatabase,276-277
Reporting,64-71
SentryOneDatabaseMaintenance,275-276
sp_sentry_dbmail_20,268-272
sp_sentry_mail_20,265-268
WatchedServerObjects,272-273
WatchingServersAcrossDomains,277
AuditConditions,94-96
Baselining,183-187
BlockingSQL,233-236
CalendarView,140-144
ClearingFailedInstances,163-164
ClientAlerts,25-26
ClientInterface,15-16
ClientSecurity,8-11
cloud.sentryone.com,247-249
Concepts,6
ConditionSettings,80-84
Conditions,78-80
ConditionsPane,19-21
ConflictViewer,164-165
SentryOne User Guide | 284
ConnecttoInstallation,75-76
ContactInformation,283
ContactManagement,42-45
CopyJob/AlertWizard,164
CustomEventViews,145
CustomEventViews
CustomEventViews,145
LevelingBackupsAcrossaSANorNAS,149-151
WorkingWithCustomEventViews,145-148
Dashboard,177-181
DashboardResolutions/Retention,181-182
DataGrids,246-247
Deadlocks,236-240
DefaultSite,38-39
DiskActivity,196-200
DiskI/O,196-200
Disklatency,196-200
DiskReports,200-203
DiskSpace,200-203
EnablingSSISLogging,171-172
EventChains,151-160
EventChains
EventChains,151-160
EventConnectorArchitecture,253-254
EventInstances,263-264
EventObjectInformationWindow,165-166
EventObjects,261-262
EventProviders,257
EventSources,257-258
EventStoreConnections,256-257
EventStores,256
EventViewPane,18-19
ExecuteActionParameters,273-275
ExecuteJobAction,103-109
ExecuteProcessAction,103-109
ExecuteSQLAction,103-109
SentryOne User Guide | 285
ExecutionAgents,254-255
ExecutionEngines,255-256
ExtendedJobStepLogging(SQLServer2005+),171
ExtendedJobStepLogging/SSISLogging,170
FailsafeConditions,92-94
FavoriteTargets,35-36
FilterEditor,84-85
FilterProcessFlowchart,148-149
FilteringProcess,148
FragmentationManager,229-232
GeneralConditions,85-92
GlobalCalendarView,36-38
GlobalView,36-38
HistoryFilter,138-139
HistorySynchronizationFailed,25-26
HotKeyList,277-279
HowtoConfigureActions,103-109
HybridEventObjects,263
ImportantConcepts,253
ImportantConcepts
ActiveEventObjects,262
EventConnectorArchitecture,253-254
EventInstances,263-264
EventObjects,261-262
EventProviders,257
EventSources,257-258
EventStoreConnections,256-257
EventStores,256
ExecutionAgents,254-255
ExecutionEngines,255-256
HybridEventObjects,263
ImportantConcepts,253
ReportingServicesReports,259-260
SQLServerAgentAlerts,258-259
SQLServerAgentJobs,258
SQLServerAgentLog,260
SentryOne User Guide | 286
StatusEvents,262-263
WindowsTasks,260-261
IndexAnalysis,214-216
Indexestab,225-229
InstallationandMaintenance,7
Instances,41-42
InventoryView,60-61
JobQueueing,160-163
JobQueueing
JobQueueing,160-163
LevelingBackupsAcrossaSANorNAS,149-151
LicenseManagement,33-35
LicenseManagement
LicenseManagement,33-35
ListView,144-145
LogToDatabaseAction,103-109
LogToDiskAction,103-109
LogToEventLogAction,103-109
Logs
ActionsLog,61-63
Menus,26-29
MessageEditing,111-117
MonitorAdditionalTargetsandInstances,73-75
MonitoringaSQLServerInstance,73-75
MonitoringaWindowsTarget,73-75
MonitoringanAnalysisServicesInstance,73-75
MonitoringService,51
MonitoringService
InventoryView,60-61
MonitoringService,51
MonitoringServiceLoadBalancingandFaultTolerance,61
MonitoringServiceLogonAccount,64
MonitoringServiceSettings,51-55
ServiceConfigurationUtility,63-64
SiteConfiguration,58-60
MonitoringServiceFailover,61
SentryOne User Guide | 287
MonitoringServiceLoadBalancing,61
MonitoringServiceLoadBalancingandFaultTolerance,61
MonitoringServiceLogonAccount,64
MonitoringServiceSettings,51-55
Multi-serverAdministration(MSX/TSX),166-167
NavigatorNodes,35
NavigatorPane,16-18
ObjectGroups,48-51
OutputContentMatch,136-137
PerformanceAnalysisOverview,243-245
PerformanceAnalysisToolbar,245-246
PerformanceMetrics,187-194
PerformanceMonitoring
FilterProcessFlowchart,148-149
FilteringProcess,148
PlanDiagramOptions,214
PlanExplorer(integrated),208-211
PlanExplorerSessions,211-212
Processes,194-196
PurgeHistoryOlderThan,51-55
QueryPlans,224-225
QuickTraces,240-243
RelocatingtheSentryOneDatabase,276-277
Reporting,64-71
ReportingServicesReports,259-260
ResponseRulesetExamples,132-136
ResponseRulesets,129-132
RightsBasedSecurity,8-11
RoleBasedSecurity,11-13
RoleBasedSecurity
RoleBasedSecurity,11-13
RunQuickTraceAction,103-109
RuntimeStats,167-168
ScanforConfigurationChanges,39-41
SchedulesandWindows,45-48
SecurityOverview,8
SentryOne User Guide | 288
SendEmailAction,103-109
SendPageAction,103-109
SendSNMPTrapAction,103-109
SentryOneClient,14
SentryOneClient
AddingNotes,71-73
CalendarView,140-144
ClearingFailedInstances,163-164
ConflictViewer,164-165
ConnecttoInstallation,75-76
CopyJob/AlertWizard,164
EnablingSSISLogging,171-172
EventObjectInformationWindow,165-166
ExtendedJobStepLogging(SQLServer2005+),171
ExtendedJobStepLogging/SSISLogging,170
ListView,144-145
MonitorAdditionalTargetsandInstances,73-75
Multi-serverAdministration(MSX/TSX),166-167
OutputContentMatch,136-137
RuntimeStats,167-168
SentryOneClient,14
SentryOneDatabaseMaintenance,275-276
SentryOneEventCalendar,138
SentryOneEventManager
SentryOneEventCalendar,138
SentryOnePerformanceAnalysis,173-177
Baselining,183-187
BlockingSQL,233-236
cloud.sentryone.com,247-249
Dashboard,177-181
DataGrids,246-247
Deadlocks,236-240
DiskActivity,196-200
DiskSpace,200-203
PerformanceMetrics,187-194
PlanExplorer(integrated),208-211
SentryOne User Guide | 289
QueryPlans,224-225
QuickTraces,240-243
SentryOnePerformanceAnalysis,173-177
ServerDetails,249-250
ServerHealthStatus,250-252
SSASUsageTotals,233
TopSQL,204-208
TopSQLRuntimeStats,216-217
SentryOnePowerShellModule,279-282
ServerDetails,249-250
ServerHealthStatus,250-252
ServiceConfigurationUtility,63-64
Settings,117-120
SettingsPane,21-25
SiteConfiguration,58-60
SMTPAlerts,55-58
SMTPConfiguration,55-58
SMTPServerGroups,55-58
SNMPAlerts,51-55
sp_sentry_dbmail_20,268-272
sp_sentry_mail_20,265-268
SQLServerAgentAlerts,258-259
SQLServerAgentJobs,258
SQLServerAgentLog,260
SQLServerRegistrations,42
SQLServerSettings,120-126
SQLPerformance.comPlanUpload,212-214
SSASSettings,126-127
SSASUsageTotals,233
StatusEvents,262-263
SystemStatus,63
Targets,39-41
Toolbars,168-170
TopSQL,204-208
TopSQLRuntimeStats,216-217
UserPreferences,29-33
SentryOne User Guide | 290
VirtualMachineSupport,247
Virtualization,36
WatchedServerObjects,272-273
WatchingServersAcrossDomains,277
Welcome,6
WindowsEventLogs,261
WindowsSettings,127-129
WindowsTasks,260-261
WorkingWithCustomEventViews,145-148
SentryOne User Guide | 291