EdgeSight: Reporting on Alerts

Intro

EdgeSight allows to you to create alerts that trigger on many criteria.  In this post, we will configure an alert and show how to query the database directly to get this information.

Creating an alert

For the purposes of this post, I have created a Process Hung alert for outlook.exe.  This is a built-in Application Error alert that can trigger on the EXE file name, the application description, the process file version, and/or the process company name.  The actual alert will show up in the Farm Monitor and Alert List view under the Monitor Tab in the EdgeSight console.

Now you will get a near real-time alert in the console that looks like this:
image

I found that this alert triggered quite often and while you can use the “Process Not Responding Alert” report, this blog is all about pulling back the veil.

The Query

We will use the VW_ES_ARCHIVE_ALERT view for this query.  Here is an example of all the columns in this view (customer specific information hidden):

image

For our purposes, I want to get the date of the alert, the machine name, the username, the process name, the process description, and the actual text of the alert.

DECLARE @mydate DATETIME
Set @mydate = GETDATE()
SELECT DISTINCT CONVERT(VARCHAR,time_stamp,111) AS 'Date', machine_name, account_name, exe_name, alert_name,alert_text
FROM vw_es_archive_alert
WHERE alert_name = 'Process Hung'
and exe_name = 'Outlook.exe'
and CONVERT(VARCHAR,time_stamp,111) = CONVERT(VARCHAR,@mydate,111)

This gives me:
image

If you look at the alert_text field, you will see some information that doesn’t look right.  You can see “Microsoft Office Outlook”, a weird character, and a series of numbers.  These numbers are in fact the actual process hang measured in milliseconds.  You can see this if you go back to the farm monitor and select the detail for an alert:

image

You have the information you need to determine who is having a real long delay, but how can we sort or organize this delay information.  There is no built-in MSSQL function to break this column up into two useful fields.  A Google search pointed me to a user-written function that will strip non-alphanumeric from a column.

CREATE FUNCTION [dbo].[fn_StripCharacters]
(
 @String NVARCHAR(MAX),
 @MatchExpression VARCHAR(255)
)
RETURNS NVARCHAR(MAX)
AS
BEGIN
 SET @MatchExpression = '%['+@MatchExpression+']%'
 WHILE PatIndex(@MatchExpression, @String) > 0
 SET @String = Stuff(@String, PatIndex(@MatchExpression, @String), 1, '')
 RETURN @String
END

Once you execute this in the MSSQL Management Studio, you can reference the function in your query:

DECLARE @mydate DATETIME
Set @mydate = GETDATE()
SELECT DISTINCT CONVERT(VARCHAR,time_stamp,111) AS 'Date', machine_name, account_name, exe_name, alert_name, dbo.fn_StripCharacters(alert_text, '^a-z0-9')
FROM vw_es_archive_alert
WHERE alert_name = 'Process Hung'
and exe_name = 'Outlook.exe'
and CONVERT(VARCHAR,time_stamp,111) = CONVERT(VARCHAR,@mydate,111)

This now gives us:

image

Now the special character is gone, but how can you split the process delay out of the column?  You can use a built-in MSSQL function call SUBSTRING.

DECLARE @mydate DATETIME
Set @mydate = GETDATE()
SELECT DISTINCT CONVERT(VARCHAR,time_stamp,111) AS 'Date', machine_name, account_name, exe_name, alert_name, SUBSTRING(dbo.fn_StripCharacters(alert_text, '^a-z0-9'),23,6) AS 'Delay'
FROM vw_es_archive_alert
WHERE alert_name = 'Process Hung'
and exe_name = 'Outlook.exe'
and CONVERT(VARCHAR,time_stamp,111) = CONVERT(VARCHAR,@mydate,111)

Now we get:

image

To finish up, we’ll divide the Delay by 1000 to get the delay in seconds.

DECLARE @mydate DATETIME
Set @mydate = GETDATE()
SELECT DISTINCT CONVERT(VARCHAR,time_stamp,111) AS 'Date', machine_name, account_name, exe_name, alert_name, CONVERT(INTEGER,SUBSTRING(dbo.fn_StripCharacters(alert_text, '^a-z0-9'),23,6),10)/1000.0 AS 'Delay'
FROM vw_es_archive_alert
WHERE alert_name = 'Process Hung'
and exe_name = 'Outlook.exe'
and CONVERT(VARCHAR,time_stamp,111) = CONVERT(VARCHAR,@mydate,111)
ORDER BY 'Delay' desc

Our end result:

image

With this information, you can do further manipulation including counting the number of alert instances for a user or tracking a single user over time.

As always I welcome all questions and comments.

Thanks,
Alain

Advertisements

Article: EdgeSight for NetScaler 2.1 – Brand new Dashboard | Citrix Blogs

UPDATE2: I’ve just learned that the beta build of EdgeSight for NetScaler 2.1 will be updated this week with some fixes.

UPDATE: One of my blog readers had an issue getting the GeoData to display correctly. Abhilash Verma who wrote the Citrix blog post below provided the Citrix EdgeSight for NetScaler Administrator’s Guide as a reference.  The Geo Data Configuration starts on page 35.

EdgeSight for NetScaler 2.1 – Brand new Dashboard | Citrix Blogs.

EdgeSight for NetScaler 2.1 is running under beta and everyone is excited about the brand new Dashboard which changes the whole view of how you look at the Applications deployed in your NetScaler infrastructure.

Here is a snapshot of the Dashboard:

The whole Dashboard is divided into 2 parts:

Application View

Provides consolidate view of top 5 Applications based on:

  • Best Response Time
  • Worst Response Time
  • Best Page Load Time

All this can be viewed in terms of Chart or tabular format. Following is an example of Best response time in Chart and Table format.

Client Details

Provides detailed view of Client side stats:

  • Client Browser Stats
  • Client Operating System Stats

Here is how the distribution looks like:

In today’s world Application visibility is not just limited to local or single location. Response time for clients can vary a lot for location to location based on WAN latency and other factors introduced. EdgeSight supports client specific response time data visibility based on Geo location as well.

View of geographically distributed Users and Application:

Response time for based on Geo location:

This Dashboard would make administrators life much easy with respect to how Applications are performing and how to monitor end user response time. With the level of details on client OS, device and browser one can figure out the usage structure very well.

Article: XenServer Resource Links

http://blogs.citrix.com/2010/11/23/xenserver-resource-links/

This blog provides quick introduction to the resources available for XenServer and Citrix Essentials.

XenServer Page – http://citrix.com/xenserver

Download XenServer 5.6 FP1 GA – http://www.citrix.com/lang/English/lp/lp_1688616.asp

MyCitrix (Licensing, Support and Partner Sales Kits) – www.citrix.com/mycitrix

Download XenServer (Partners can access NFR license via MyCitrix) – http://www.citrix.com/English/ps2/products/feature.asp?contentID=2300356 and http://www.citrix.com/English/ps2/demo.asp?ntref=util

Download Essentials for Hyper-V http://www.citrix.com/English/ps2/products/feature.asp?contentID=1854353

Citrix XenServer Feature Matrix – http://www.citrix.com/english/ps2/products/subfeature.asp?contentid=1680964

Citrix eDocs online Production Documentation – http://support.citrix.com/proddocs/index.jsp

Free E-Learning Course – Introduction to Citrix Essentials for XenServer 5.5 – http://citrixtraining.com/courses/course_view.cfm/course_id:274

Citrix XenServer Literature – http://www.citrix.com/English/ps2/products/documents.asp?contentid=683148

Citrix Ready – http://www.citrix.com/ready

Citrix Community – http://community.citrix.com/

Citrix XenServer Central – http://community.citrix.com/citrixready/xenserver

XenServer 5.6 FP1 Administrator Guide – http://docs.vmd.citrix.com/XenServer/5.6.0fp1/1.0/en_gb/reference.html#id2564366

Citrix Knowledge Center – http://support.citrix.com/ and http://support.citrix.com/product/xens/

Citrix XenServer Featured Articles – http://support.citrix.com/product/xens/v5.6/

Citrix Licensing Basics – http://www.citrix.com/lang/English/lp/lp_2305120.asp

Citrix Forum – http://forums.citrix.com/support

Citrix XenServer Master Classes (Free) – [www.citrix.com/xsmasterclass]

Citrix XenServer 5.6 FP1 Master Class (ANZ) – https://www1.gotomeeting.com/register/644832776

XenServer Project “Cowley” – http://www.citrix.com/English/NE/events/event.asp?eventID=1855037

Citrix TV – http://www.citrix.com/tv/

OpenSource iSCSI Targets for XenServer – http://www.nexenta.com/corp/products & http://www.osnexus.com/

Citrix XenServer Security Target – http://www.commoncriteriaportal.org/files/epfiles/crp255st.pdf

eCo System Partners – https://www.citrix.com/English/partners/partnertop.asp

• Fault Tolerance – http://www.marathontechnologies.com/high_availability_xenserver.html

• Backup – (PHD virtual, Quorumsoft , SEP, Commvault. Symantec) – http://support.citrix.com/article/CTX122191

• Security – http://www2.catbird.com/

• Multitenant – http://www.desktone.com/ & http://cloud.com/ & http://www.openstack.org/

• Virus Scanning – http://www.mcafee.com/us/campaigns/virtualized/

Citrix Product Lifecycle Phases

http://www.citrix.com/English/SS/supportThird.asp?slID=5107&tlID=1861631

http://www.citrix.com/English/ps2/products/subfeature.asp?contentID=1681139

XenServer Tech Specs – http://www.citrix.com/English/ps2/products/subfeature.asp?contentID=1681139

Citrix XenServer Best Practices

http://community.citrix.com/display/xs/Best+Practices

http://h20195.www2.hp.com/v2/getdocument.aspx?docname=4AA2-5115ENW.pdf

http://h20195.www2.hp.com/v2/getdocument.aspx?docname=4AA2-8023ENW.pdf

https://community.citrix.com/kits/#/kit/3125008

Citrix HCL – http://hcl.vmd.citrix.com/

Citrix HCL Community Verified – http://community.citrix.com/citrixready

Citrix HCL Self Certification Kits – http://www.citrix.com/ready/hcl

Citrix YouTube Channel – http://www.youtube.com/user/CitrixTV

Citrix Ask the Architect – http://community.citrix.com/p/ata#architects & AsktheArchitect@citrix.com

XenServer ROI Calculates – https://roianalyst.alinean.com/citrix/xenserver/

Citrix Synergy 2010 – http://www.citrixsynergy.com/

Citrix Security Bulletins – http://support.citrix.com/securitybulletins/

Citrix IRC Channel – http://join.citrixirc.com/

Twitter – @Citrix, @xenserverarmy, @Citrix_Synergy, #citrixsynergy, #xenserver

Citrix on Facebook – http://www.facebook.com/citrix

Helpful Resources for XenServer – http://www.citrix.com/lang/English/lp/lp_1688622.asp#top

Fault Tolerance using Marathon – http://www.marathontechnologies.com/high_availability_xenserver.html& http://community.citrix.com/blogs/

Open vSwitch – http://openvswitch.org/ & http://www.openflowswitch.org/

Citrix Product Sales Kit – http://community.citrix.com/kits/brand/sk-products

Latest News Articles

The Co-operative Group – http://www.citrix.com/English/aboutCitrix/caseStudies/caseStudy.asp?storyID=2304613

Server Right Sizing –http://community.citrix.com/display/ocb/2010/04/02/The+importance+of+knowing+your+environment

ACMA builds Xen-based private cloud – http://www.cio.com.au/article/367528/acma_builds_xen-based_private_cloud/

XenDesktop on Hyper-V SP1 with Citrix Essentials (40% More user Density) –http://community.citrix.com/pages/viewpage.action?pageId=157322595

Social Media

Twitter: @XenServerArmy

Facebook: www.facebook.com/CitrixXenServer

LinkedIn: Citrix XenServer Events

What’s Driving the Surge in XenServer Market Share – http://community.citrix.com/pages/viewpage.action?pageId=155618890

First OpenStack Release – http://www.businesswire.com/news/home/20101021006633/en/OpenStack-Release-Produces-Open-Source-Cloud-Alternative

OpenStack – http://community.citrix.com/display/ocb/2010/10/21/If+you’ve+seen+one+redwood,+you’ve+seen+them+all

A hard, rough, abrasive look at camel spotting…no dromedaries…no virtualization.

%d bloggers like this: