-
Operators
-
Operators & Operator Groups
- Primary Operator
-
Backup Operators
- Based on Operator Calendars
-
Role based Security
- Read/Write Access Rights
- Web Service Rights
- API Rights
- Profiles
-
Alert Settings
-
Escalation Methods
- Based on Operator Groups & Operator Calendars
-
Operator Calendars
- Time Off
- On-Call
- etc
-
Database
-
Multiple Read/Write Mechanisms
- Direct (Stored Proc)
- API
-
PowerShell
- Leverages API
- Web Service
-
Data Aggregation (Rollups)
-
Custom Aggregation Rollups
- Ex: 5 minutes, 2 hours, etc
-
Custom Retention Periods
- Based on # of data points in retention set
- Ex: Retain 300 data points
-
Named Aggregation/Retention Period
- Each Monitor can "subscribe" to any named Agg/Retention period
-
SQL Server 2008+
- Must support SQL Express
-
Data Collection
-
Windows Service
- Full Scheduler
-
Multiple Concurrent Services
- Each Monitor will be assigned to a specific Windows Service
-
Multi-Threaded
- User defineable # of threads
-
Define thread affinity of each monitor
- Affinity is a recommendation, Service may override this as needed
-
External Collection Mechanisms
- Ex: PowerShell
- Ex: IIS
- Ex: Custom Apps
-
Alerting
-
Escalated Alerting
- Based on Operator Calendar & Operator Escalation Settings
-
Summary Notifications
-
Scheduled
-
Options to specify what is reported in summary
- Ex: All Current
- Ex: Activity Summary for last 24 hours
- Ex: Activity Summary since Operator went "offline"
-
Alerting Mechanisms
- Email
- Twitter?
-
Blog?
-
If yes, which ones?
- Wordpress
- Wiki?
- RSS?
-
Must provide extensible architecture
-
Allows users to write their own mechanisms to push alerts as they wish (Push)
- Community web site for sharing
-
Email Interaction?
- Use Email to request status, initiate actions, etc
-
Monitors
-
Monitors & Counters
-
Counter Types
-
Text Types
- Ex: Broken Link
-
Numeric Types
- Metadata
- Data Types
- Units
- Additive/Sub-Additive
- Counter Value Transformations
- Translations
- Scaling
- Metadata
- Units
- Date Types
-
Custom Statuses
- (Not just OK, Warn, Fail)
-
Error Levels
- Ties in to Operator Escalation Mechanism
-
Additional Native Monitors
-
Web Site Link Checker
- Anonymous
- Logged-In
-
IIS Built-In
- Page Load Timing
- Page Errors
- Improve SNMP Monitor
- CPU - Multi-Instance
- POP/SMTP
- Hardware Inventory
- OS/Driver Inventory?
- Software Inventory?
- More robust SNMP monitoring
-
Monitor Dependencies
-
Monitoring Dependency
- Rules on what to do with Dependent Monitors
-
Alerting Dependency
- Rules on what to do with Dependent Monitors
- Does not affect monitoring
-
PowerShell Integration
- Provide PowerShell script alternative to every native monitor type
- Some monitors will be PowerShell only
-
Ability to specify PowerShell editor
- Ex: PowerGUI
- Ex: PowerShellPlus
- Ex: Sapien's Primal Pad
-
PowerShell Host Name
- Change $host.name to something like PolyMon
-
Ability to hook into Write-Host, Write-Warning, Write-Error
- Rules to map custom error levels to Write-Host/Warning/Error
-
Simple Plug-In approach to PowerShell based monitors
- Makes PolyMon easily extensible
-
Web site that allows easy publish/download of PowerShell based monitors
- Allows community to easily/quickly grow PolyMon beyond core product
-
Post-Event Actions
- PowerShell
-
Multiple Triggers
- Based on Custom Error Levels
-
Allows modifying Alerting/Monitoring status of other monitors
- Ex: Stop monitoring X if this monitor has a Fail status
-
Repitition Rules
- Ex: Run Once when status changes from x to y
- Ex: Run every x minutes when status=y
- etc
-
Dependency Rules
- Ex: If this monitor's status = X and (Monitor Y's status=Z or Monitor A's Counter B = C)
-
Native Monitors
-
Ability to run impersonate other user
-
Credentials stored in database
- Must be encrypted
-
Reporting
-
Front-End
-
Windows
-
Customizable Dashboard
- Plug-In Architecture for Dashboard Widgets
- Community web site to publish/download widgets
-
Customizable Dashboard
- Ex: DropThings, iGoogle style
-
Plug-In Architecture for Dashboard Widgets
- Community web site to publish/download widgets
-
PowerShell Integration
- cmdlets
- Look at display mechanisms offered by vendors and provide easy integration if possible
- Full API access to reporting data
-
Statistics
- Regression Trends
- Fluctuations
-
Baseline
- Deviation from baseline
-
SQL Reporting Services
- Plug-In SSRS
-
Extensible Architecture
-
User has ability to define their own reporting mechanism (Pull)
- Community web site for sharing
- SharePoint, Drupal, Joomla, etc
-
Other Possible Platforms
- Google Gadgets
- Vista Gadgets
- iPhone
-
Monitor Management
-
Security
-
Super Admins
- Can do anything
- Role Based Operators
-
Host Group Templates
-
Defines a set of multiple monitors
- Implements monitor dependency mechanism
-
Group Host/IP
-
Applies to all sub-monitors
- Cannot be overriden at sub-monitor level
-
Group Operators
- Can be overriden at individual sub-monitor level
-
Group Alert Settings
- Can be overriden at individual sub-monitor level
-
Group Agg/Retention
- Can be overriden at individual sub-monitor level
-
Security Impersonation
- Can be overriden at individual sub-monitor level
- Monitor Dependency
-
Monitor Group Templates
- Single Monitor
- Defines a set of multiple Host/IP
-
Group operators
- Can be overriden at individual sub-host level
-
Group Alert Settings
- Can be overriden at individual sub-host level
-
Group Agg/Retention
- Can be overriden at individual sub-host level
-
Security Impersonation
- Can be overriden at sub-host level
-
Discovery Templates
- Defines discovery rules for monitored entities
-
Default Agg/Retention
- Can be overriden at individual rule level
-
Default Operators
- Can be overriden at individual rule level
-
Default Alert Settings
- Can be overriden at individual rule level
-
Default Security Impersonation
- Can be overriden at individual rule level
- Monitor Dependency
-
Rule Application
-
Applies Rules to create Instances
- Option to include/exclude at discovery time
- Override Agg/Retention
- Override Operators
- Override Alert Settings
- Override Security Impersonation