EXPLOITING WEB PUBLISHING TECHNOLOGY TO ENHANCE PERFORMANCE REPORTING - PowerPoint PPT Presentation

About This Presentation
Title:

EXPLOITING WEB PUBLISHING TECHNOLOGY TO ENHANCE PERFORMANCE REPORTING

Description:

JavaScript ASP EXPLOITING WEB PUBLISHING TECHNOLOGY TO ENHANCE PERFORMANCE REPORTING tables forms Claude Aron Chevron Information Technology Company – PowerPoint PPT presentation

Number of Views:148
Avg rating:3.0/5.0
Slides: 27
Provided by: Claud90
Category:

less

Transcript and Presenter's Notes

Title: EXPLOITING WEB PUBLISHING TECHNOLOGY TO ENHANCE PERFORMANCE REPORTING


1
EXPLOITING WEB PUBLISHING TECHNOLOGY TO ENHANCE
PERFORMANCE REPORTING
JavaScript
ASP
tables
forms
Claude Aron Chevron Information Technology
Company San Ramon, CA
frames
hyperlinks
2
AGENDA
  • Introduction
  • Environment
  • Using frame-based pages for report retrieval
  • Exception reporting with embedded hyperlinks
  • Server health reporting using color-coded table
    cells
  • Server configuration reporting with query
    capability
  • Summary

3
AGENDA
  • Introduction
  • Environment
  • Using frame-based pages for report retrieval
  • Exception reporting with embedded hyperlinks
  • Server health reporting using color-coded table
    cells
  • Server configuration reporting with query
    capability
  • Summary

4
Introduction
  • Web-based reporting is the information delivery
    standard
  • Out-of-the box advantages over paper publishing
  • Timeliness - delivery can be virtually
    instantaneous
  • Universal accessibility - no need to predefine
    recipients
  • Dynamic - content can be modified at any time
  • Interactive access - users can select subsets of
    data
  • Environmentally friendly - saves trees!

5
Introduction
  • But, merely converting existing paper reports to
    web format (e.g. HTML or GIF files) is NOT
    sufficient
  • The increased exposure to increasingly
    sophisticated internet content has raised user
    expectations of usability
  • The volume of performance reports in a
    distributed environment with hundreds of servers
    requires
  • An efficient user interface for navigating to
    specific content
  • A method for identifying exceptions thresholds
  • A method for drilling down to increasing levels
    of detail
  • A help facility to define explain reports
    metrics

6
Introduction
  • Assumptions
  • You dont have the luxury of assigning or hiring
    an experienced web application developer to
    design and implement a performance reporting
    application
  • The volume of your data capabilities of your
    hardware/software preclude dynamic report
    generation
  • You have a basic understanding of programming
    principles
  • You have some experience with SAS programming
  • You have some experience with VBScript
    programming (optional)

7
AGENDA
  • Introduction
  • Environment
  • Using frame-based pages for report retrieval
  • Exception reporting with embedded hyperlinks
  • Server health reporting using color-coded table
    cells
  • Server configuration reporting with query
    capability
  • Summary

8
Environment
  • 400 monitored NT servers
  • File (54), Print (46), Domain Control (61), SMS
    (41), MSExchange (80), Shared Apps (47), RAS
    (16), Lotus Notes (14), SAP (17), Misc Apps (24)
  • 22 HP-UX servers 14 Sun Servers
  • Performance Data Repository is SAS IT Service
    Vision
  • Data collectors are NTSMF (DataCore Software)
    Measureware (HP)
  • Hardware HP-UX K430, 4 CPUs, 768 MB memory,
    13 GB disk space

9
AGENDA
  • Introduction
  • Environment
  • Using frame-based pages for report retrieval
  • Exception reporting with embedded hyperlinks
  • Server health reporting using color-coded table
    cells
  • Server configuration reporting with query
    capability
  • Summary

10
Frame-based pages for reports
  • The frame wars are over
  • Frames provide an excellent UI structure for
    report retrieval
  • Form with selection criteria in one frame
  • Report output in second frame
  • User navigational interaction is kept to a
    minimum
  • Sample frameset syntax
  • ltframeset rows15,85gt
  • ltframe srcxxx.htmlgt
  • ltframe srcyyy.html namereportwingt
  • lt/framesetgt
  • Sample form syntax
  • ltform methodPOST actionzzz.asp
    targetreportwin

11
Frame-based pages for reports
  • Best practices
  • Establish a strict naming pattern for report
    files, to minimize complexity of server scripts.
    Example
  • servertype.servername.reporttype.interval.outputty
    pe
  • Use the report output frame to display useful
    information when the page is first displayed,
    e.g. a high-level summary report or a help page
    that explains report contents or selection
    criteria.
  • Minimize the screen real estate used by the
    report selection frame to maximize the viewing
    area for reports.
  • Include a link to the site home page to a help
    page in the report selection frame.
  • If you have multiple report framesets, include
    links to them in the report selection frame (use
    javascript routines to create dropdowns).

12
AGENDA
  • Introduction
  • Environment
  • Using frame-based pages for report retrieval
  • Exception reporting with embedded hyperlinks
  • Server health reporting using color-coded table
    cells
  • Server configuration reporting with query
    capability
  • Summary

13
Exception reporting / hyperlinks
  • Exception Report Design
  • Large number of servers in a distributed
    environment makes exception reporting imperative.
  • Try to design exception reports so that all
    exceptions appear on a single web page.
  • Highlight exceptions that exceed thresholds (e.g.
    by color-coding) so that they stand out clearly.
  • Provide hyperlinks to detailed reports that
    provide additional data on exceptions (length,
    severity, potential causes, etc.)

14
Exception reporting /hyperlinks
  • SAS HTML Data Set Formatter
  • SAS HTML Data Set Formatter converts SAS data
    into html tables.
  • Invoked via ds2htm macro call.
  • Specify input SAS data set, output html file,
    variables to display in table optional
    formatting parameters.
  • Example ds2htm(htmlfileabc.exceptions.20001231.
    html,
  • datamysas.exception.data,
  • varserver1 metric1 server2
    metric2 server3 metric3,
  • clsize1, vsize1,
    captionServer Exception Report)
  • Complete documentation at http//www.sas.com/rnd/w
    eb/intrnet/format/index.html

15
Exception reporting /hyperlinks
  • Embedding hyperlinks
  • Build SAS variables formatted into html hyperlink
    syntax.
  • Syntax is lta hrefURLgttext stringlt/agt.
  • Set length of SAS variable to a large value (e.g.
    90).
  • Concatenate literal strings to variables, e.g.
  • cellvallta hrefpfx.. trim(servname)
    . trim(date) .gifgt servname
    lt/agt
  • If a SAS macro variable needs to be followed by a
    period, you need to insert an extra period, e.g.
    pfx..
  • Use the SAS trim function to remove trailing
    blanks.

16
Exception reporting /hyperlinks
  • Highlighting thresholds
  • Same method as embedding hyperlinks - build SAS
    variables that contain html syntax for specifying
    color properties.
  • Syntax for specifying font color is ltfont
    colorcolornamegt
  • Test threshold value when building variables
  • if thresh0 then exval put(val,7.2)
  • else exval ltfont colorredgt put(val,
    7.2) lt/fontgt
  • The SAS put function formats numeric variables as
    character strings.
  • If you dont assign a ltfont colorgt, the default
    font color for that page is used.

17
AGENDA
  • Introduction
  • Environment
  • Using frame-based pages for report retrieval
  • Exception reporting with embedded hyperlinks
  • Server health reporting using color-coded table
    cells
  • Server configuration reporting with query
    capability
  • Summary

18
Server health reporting
  • Server Health Report Design
  • Green light, yellow light, red light paradigm
  • Green Normal range, no action required
  • Yellow Exceeds normal range, but may be
    acceptable
  • Red Extreme range, should be investigated
  • Metrics for availability, processor utilization,
    available memory, disk space.
  • Analyze your own historical data to determine
    thresholds be prepared to tune adjust if
    necessary. If you have a lot of red lights,
    either youre in serious trouble or your
    thresholds are not set correctly!
  • Metrics are hyperlinks to detailed reports
    column headings are hyperlinks to metric
    definitions (javascript popups).

19
Server health reporting
  • Coding techniques
  • Due to cell-coloring logic javascript popups,
    we cant use the ds2htm macro - so we use
    standard SAS put statements instead.
  • Output file is .asp, to allow server-side
    includes.
  • Include syntax lt!--include fileyour.filename--gt
  • Select/when statements are used to test metric
    values, determine what color cells should be,
    build variables.
  • Syntax for hyperlinking to a javascript function
  • lta hrefjavascriptvoid(functionname())gttext
    stringlt/agt
  • Javascript function definition must be placed
    above the function call!

20
AGENDA
  • Introduction
  • Environment
  • Using frame-based pages for report retrieval
  • Exception reporting with embedded hyperlinks
  • Server health reporting using color-coded table
    cells
  • Server configuration reporting with query
    capability
  • Summary

21
Server configuration queries
  • Server Configuration Query Design
  • Be able to answer questions such as
  • What are the hardware/software configurations of
    a class of servers?
  • Are there any servers that havent been upgraded
    to Service Pack n?
  • Which servers are configured with over 1 GB of
    memory?
  • Can use flat file or database table.
  • Use form input boxes to allow text or numeric
    input.
  • Pre-fill with values that retrieve all servers IF
    thats practical.
  • Allow case-insensitive input.
  • Disregard leading or trailing blanks.

22
Server configuration queries
  • Form Processing Coding Hints
  • Form input statement syntax
  • Text input typetext sizen maxlengthn
    namefieldname
  • Numeric input typenumber sizen maxlengthn
    valuennamefieldname
  • Processing form input in Active Server Pages /
    VBScript
  • To read values
  • xRequest.Form(fieldname)
  • To eliminate trailing/leading blanks convert to
    upper case
  • xTrim(Ucase(Request.Form(fieldname)))
  • To test for numeric input
  • if not IsNumeric(x) then ...

23
Server configuration queries
  • File Processing Coding Hints
  • To open a file for processing
  • Set SobjServer.Create.Object(Scripting.FileSyste
    mObject)
  • Set Sfilsobj.OpenTextFile(ServerMapPath(your.fil
    e))
  • To read data from a file
  • SrvTempsfil.ReadLine
  • SrvVarSplit(OneRec,,,-1,1)
  • To test for presence of a character string
  • if Instr(1,SrvVar(0),SrvString,1) gt 0 then ...
  • To write output records
  • Response.Write

24
Server configuration queries
  • File Processing Coding Hints
  • To close a file
  • Sfil.Close
  • Next two statements free memory system
    resources - very important!
  • Set SfilNothing
  • Set SobjNothing
  • To send all the generated output to the browser
  • Response.Flush
  • Needed only if Response.BufferTrue was set.
    Response buffering is recommended in most cases
    to optimize network transmission.

25
AGENDA
  • Introduction
  • Environment
  • Using frame-based pages for report retrieval
  • Exception reporting with embedded hyperlinks
  • Server health reporting using color-coded table
    cells
  • Server configuration reporting with query
    capability
  • Summary

26
Summary
  • Internet publishing of performance data has some
    intrinsic advantages.
  • With a little thought effort, its possible to
    design reports report interfaces that enhance
  • the user experience.
  • You dont need to be a professional web
  • developer - even performance analysts
  • can do it!
Write a Comment
User Comments (0)
About PowerShow.com