© 2002 page 1 ITUG Summit 2002 27—31 October San Jose, California ASAP Extension API

Slides:



Advertisements
Similar presentations
Building Portals to access Grid Middleware National Technical University of Athens Konstantinos Dolkas, On behalf of Andreas Menychtas.
Advertisements

CC SQL Utilities.
JavaScript FaaDoOEngineers.com FaaDoOEngineers.com.
1 ASAP Extension (ASAPX) 2.0 Overview September 17, 2001 Joe Davis
1 ASAP 2.0 Introduction to EDL Mike Miller Mike Miller Presentation contains animation sequences that are best viewed in.
 2005 Pearson Education, Inc. All rights reserved Introduction.
Optimizing Windows Vista Performance Lesson 10. Skills Matrix Technology SkillObjective DomainObjective # Introducing ReadyBoostTroubleshoot performance.
Jewelry Inventory Management Software Your Logo Here Welcome to a demonstration of Del Mar Data Systems Jewelry Inventory Management.
29 Oded Moshe, Director of Product Management Beta Release May 3rd, 2010 Official Release May 24, 2010.
Page 1 of 36 Respective of PNG Tenure Regulation Sections 19 to 23; when Crown land is leased without a producing well and is being drained by a freehold.
ASAP Release 2.0 Mike Miller Software Architect Nonstop Enterprise Division May 18, 2002 Mike Miller Software Architect Nonstop Enterprise Division May.
Using Visual Basic 6.0 to Create Web-Based Database Applications
Chapter 11 - Monitoring Server Performance1 Ch. 11 – Monitoring Server Performance MIS 431 – created Spring 2006.
Network Administration Procedures Tools –Ping –SNMP –Ethereal –Graphs 10 commandments for PC security.
Chapter 7: User-Defined Methods
COMP 14: Intro. to Intro. to Programming May 23, 2000 Nick Vallidis.
University of Washington CUMREC 2003 Uncompromised Web Applications: Variety Without Chaos University of Washington CUMREC 2003 Copyright University of.
Check Disk. Disk Defragmenter Using Disk Defragmenter Effectively Run Disk Defragmenter when the computer will receive the least usage. Educate users.
© Copyright 2013 TONE SOFTWARE CORPORATION. Confidential and Proprietary. All rights reserved. ® Basic Administrator Training – Release Entities.
DEMONSTRATION FOR SIGMA DATA ACQUISITION MODULES Tempatron Ltd Data Measurements Division Darwin Close Reading RG2 0TB UK T : +44 (0) F :
Emanuele Pasqualucci Extending AppManager Monitoring with the SNMP Toolkit.
Form Handling, Validation and Functions. Form Handling Forms are a graphical user interfaces (GUIs) that enables the interaction between users and servers.
1 Vendor RFI - Event User Guide. 2 Minimum System Requirements Internet connection - Modem, ISDN, DSL, T1. Your connection speed determines your access.
TrendReader Standard 2 This generation of TrendReader Standard software utilizes the more familiar Windows format (“tree”) views of functions and file.
Welcome! WebJunction CQ Training - Creating an Event Listing Why & How Welcome.
Chapter 10 EJB Concepts of EJB Three Components in Creating an EJB Starting/Stopping J2EE Server and Deployment Tool Installation and Configuration of.
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
South Dakota Library Network ALEPH v21 Staff User Upgrade Information Circulation and ILL South Dakota Library Network 1200 University, Unit 9672 Spearfish,
© 2004 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice ASAP 2.5 TOI Part 4 ASAP OVO SPI.
Java: Chapter 1 Computer Systems Computer Programming II.
XP New Perspectives on Browser and Basics Tutorial 1 1 Browser and Basics Tutorial 1.
Conditions and Terms of Use
10-1 aslkjdhfalskhjfgalsdkfhalskdhjfglaskdhjflaskdhjfglaksjdhflakshflaksdhjfglaksjhflaksjhf.
Chapter 16 Designing Effective Output. E – 2 Before H000 Produce Hardware Investment Report HI000 Produce Hardware Investment Lines H100 Read Hardware.
Module 7: Fundamentals of Administering Windows Server 2008.
Tutorial 121 Creating a New Web Forms Page You will find that creating Web Forms is similar to creating traditional Windows applications in Visual Basic.
20411B 8: Installing, Configuring, and Troubleshooting the Network Policy Server Role Presentation: 60 minutes Lab: 60 minutes After completing this module,
Module 10: Monitoring ISA Server Overview Monitoring Overview Configuring Alerts Configuring Session Monitoring Configuring Logging Configuring.
ASAP 2.4 ASAP Extension 2.4 Monitoring Super-Scalar Systems
© 2004 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice ASAP 2.5 TOI Part 1 Goal, Action,
© 2005 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice ASAP Hybrid January, 2005 NonStopAsap.com.
Introduction to Programming David Goldschmidt, Ph.D. Computer Science The College of Saint Rose Java Fundamentals (Comments, Variables, etc.)
© 2005 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice ASAP 3.0 Server Transfer of Information.
© 2004 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Transfer of Information ASAP 2.5.
August, 2002 Presentation contains animation sequences that are best viewed in slide show mode. A colon character at the end of a slide.
© 2004 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Availability Monitoring Using ASAP.
What’s New in WatchGuard XCS v9.1 Update 1. WatchGuard XCS v9.1 Update 1  Enhancements that improve ease of use New Dashboard items  Mail Summary >
ASAP RDF SGP RDF 1.2 and 1.3 Transfer of Information
ASAP Overview and Status Update Hewlett-Packard Company hp.com October, 2003 MEA-8-HP NonStopAsap.com.
Graphing and statistics with Cacti AfNOG 11, Kigali/Rwanda.
ASAP 2.0 Discrete Object Thresholds (DOTs) September 17, 2001
37 Copyright © 2007, Oracle. All rights reserved. Module 37: Executing Workflow Processes Siebel 8.0 Essentials.
1 / 61 Using the Customer Support Web Site © 2006, Universal Tax Systems, Inc. All Rights Reserved. Customer Support Site Objectives –In this chapter you.
3 Copyright © 2004, Oracle. All rights reserved. Working in the Forms Developer Environment.
© 2005 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice Introducing ASAP Hybrid January,
Optimizing Windows Vista Performance Lesson 10. Skills Matrix Technology SkillObjective DomainObjective # Introducing ReadyBoostTroubleshoot performance.
Chapter 5 Introduction To Form Builder. Lesson A Objectives  Display Forms Builder forms in a Web browser  Use a data block form to view, insert, update,
8 Chapter Eight Server-side Scripts. 8 Chapter Objectives Create dynamic Web pages that retrieve and display database data using Active Server Pages Process.
ASP-2-1 SERVER AND CLIENT SIDE SCRITPING Colorado Technical University IT420 Tim Peterson.
B. Dalesio, N. Arnold, M. Kraimer, E. Norum, A. Johnson EPICS Collaboration Meeting December 8-10, 2004 Roadmap for IOC.
Module 6: Administering Reporting Services. Overview Server Administration Performance and Reliability Monitoring Database Administration Security Administration.
© 2008, Renesas Technology America, Inc., All Rights Reserved 1 Introduction Purpose  This training course demonstrates the Project Generator function.
Preface IIntroduction Course Objectives I-2 Course Content I-3 1Introduction to Oracle Reports Developer Objectives 1-2 Business Intelligence 1-3 Enterprise.
A Presentation Presentation On JSP On JSP & Online Shopping Cart Online Shopping Cart.
John Lloyd, Edgewater Fullscope
 1- Definition  2- Helpdesk  3- Asset management  4- Analytics  5- Tools.
ASAP General Overview ASAP 2.8 Release ASAP TCP-IP Plug-in
ASAP Overview 2.8 Release TCP-IP Plug-in
Backup Monitoring – EMC NetWorker
Backup Monitoring – EMC NetWorker
Presentation transcript:

© 2002 page 1 ITUG Summit —31 October San Jose, California ASAP Extension API

© 2002 page 2 A Brief Overview of ASAP An Availability Monitoring Infrastructure for HP NonStop™ Servers Engineered specifically for NonStop Server Architecture Includes NonStop Server Agents, Process-pairs, and Relational Stats & SLO Databases Components automatically Restart and Reconfigure, even when CPUs or devices go up/down

© 2002 page 3 What ASAP is not ASAP is not an Enterprise Management Framework HP OpenView CA Unicenter Tivoli Netview ASAP only provides an availability monitoring infrastructure However ASAP does provide: System and subsystem agents Published interfaces for custom agents Adapter interfaces to Enterprise Management Frameworks

© 2002 page 4 What ASAP monitors System Objects CPUs, Disks, Expand LHs, Nodes, Systems, Tape Drives,.. Subsystem Domains Busy Processes, Files, Selected Processes, RDF, Spooler, TMF,... Application Domains ATMs, Accounts, Customers, Orders, or anything else...

© 2002 page 5 What ASAP does with its information Generates Alerts EMS events SNMP traps Stores data in a relational database Displays data on ASAP Client Forwards data to Enterprise Management Frameworks

© 2002 page 6 ASAP Alerts :42:01 \CENTDIV.$ZOOK *TANDEM.226.V ASAP ALERT Expandip $Ipisl Status Connecting :42:01 \CENTDIV.$ZOOT *TANDEM.226.V ASAP ALERT Process $Joe Status Down :42:02 \CENTDIV.$ZOOJ *TANDEM.226.V ASAP ALERT Disk $Rtool1 Status Mirror Disk Reviving :49:02 \CENTDIV.$ZOOH2 *TANDEM.226.V ASAP ALERT Funds Transfer\$Y077 Status Lost Trans :49:02 \CENTDIV.$ZOOH3 *TANDEM.226.V ASAP ALERT Atm Chicago\East\$Atm2 Status Cash Low

© 2002 page 7 ASAP Client Browsing paradigm for access to objects Graph and Grid views Tree View Object navigation Accesses many objects Drives Graph/Grid State Information: Propagated upward “always visible” state

© 2002 page 8 Availability Vectors Illustrates host-based analysis engine Availability is determined by: Pre-defined rules (SLO) Analysis of each property of an object Aggregation of data Status, Performance and SLO information presented uniformly

© 2002 page 9 Registering an Application error=ASAP_REGISTER_ ( domain^name:name^len, seg^offset, [ error^detail ], [ segment^id ], [ segment^base ], [ version ], [ asap^id:id^len ], [ flags ], [ timeout ] ) extensible; Shared Memory Data Items Boundary Tag Checksum Control Info ASAPXMON Registration Request

© 2002 page 10 Updating In-Memory Data Shared Memory Data Items Boundary Tag Checksum Control Info ASAPXMON error=ASAP_UPDATE_( seg^offset, [ error^detail ], data^item, value, [ math ] ) extensible; “Enabled” “Trams A” “Broken” Data can be: - Counters - Time Units - Constants - Numeric - Text

© 2002 page 11 Shared-Memory Architecture Shared Memory Data Items Boundary Tag Checksum Control Info ASAPXMON “Enabled” “Trams A” “Broken” Non-Blocking Architecture No inter-process messages No semaphores Ultra-High Performance Memory updates only No App computations/feeds Memory Fully Protected Checksums Boundary tags

© 2002 page 12 Shared-Memory Architecture Extensible Shared Memory Segment ASAPXMON CPU 0CPU 1CPU 2CPU 3CPU 4CPU 5 ASAPXSGPASAP Aggregates Atm\Server\Authenticate\# 12 Domains

© 2002 page 13 Data-Gathering and Computation Data Items Boundary Tag Checksum Control Info “Enabled” “Trams A” “Broken” Entity Definitions ASAP/X :42:01 \CENTDIV.$ZOOK *TANDEM.226.V ASAP ALERT Expandip $Ipisl Status Connecting :42:01 \CENTDIV.$ZOOT *TANDEM.226.V ASAP ALERT Process $Joe Status Down :42:02 \CENTDIV.$ZOOJ *TANDEM.226.V ASAP ALERT Disk $Rtool1 Status Mirror Disk Reviving :49:02 \CENTDIV.$ZOOH2 *TANDEM.226.V ASAP ALERT Funds Transfer\$Y077 Status Lost Trans :49:02 \CENTDIV.$ZOOH3 *TANDEM.226.V ASAP ALERT Atm Chicago\East\$Atm2 Status Cash Low Objectives Data Formulas Objectives Alerts ASAP DB Records

© 2002 page 14 Computing Transaction Rate Data Items Boundary Tag Checksum Control Info “Enabled” “Trams A” “Broken” DataItem Type: I MetricRule: #2/S Format: F5.3 Heading: TransRate Objective: > 9.0 Critical /60 = If (8.067 > 9.000) False -> State NOT OK Current Sample Previous Sample #2 Result MetricRule Formula Format Objective Compare ASAP Sampling Interval: 1 minute TransRate: TransRateState: Alert Generate EMS Critical Event

© 2002 page 15 Representing an Application ATM Deposits Withdrawals Transfers Inquiries Devices Requesters Servers Database Chicago Phoenix Seattle Atlanta

© 2002 page 16 Application Name Space BusinessServiceDeveloper

© 2002 page 17 Determining What to Measure Availability/Health Metrics Transaction Rates Error Rates Response Time Status Indicators Capacity/Historical Metrics Wait times Busy percentages Usage information

© 2002 page 18 Consider Multiple ASAP Environments Shared Memory Rate 1 minute Health Monitor ASAPXMON error=ASAP_UPDATE_ ( seg^offset, [ error^detail ], data^item, value, [ math ] ) extensible; Shared Memory Rate 1 hour Capacity Monitor ASAPXMON Capacity Data Health Data

© 2002 page 19 Implementation Example Determine Application Name Space  Service View Example: Atm\Dallas\East\ParkSt Determine What to Measure  Cash in ATM Success Percent Response Time Card Reject Count DataItems Transaction count (I) Error count (I) Processing time (U) Cash remaining (C) Card rejects (I) I - integer S,M,U - time units C - constant

© 2002 page 20 Define the Application in ASAP EDL First copy APP EDL file from ASAP2APP EDL file Save and modify new file to create the Application EDL ENTITY ATM Command "APP\*ATM,DETAIL,RAW,TAB,STATE,AGGREGATE" Detail "APP^,TAB,STATE,DETAIL” DataItems "0 C, 1 I, 2 I, 3 U, 4 I" Enabled YES Help “ATM Application” MaxObjectives 200 Version ;

© 2002 page 21 Define all Metrics in ASAP EDL Add custom metric (EDL Attribute) definitions to the end of new EDL file, copy Error and ErrorState attribute pairs. AT Cash Grid YES Graph NO GraphMax 3000 Format “I6” Help ”Cash remaining in ATM" StatePair YES StateRule UseStateGraphState MetricRule “#0" TypeData REAL64; AT S0 Grid NO Graph NO GraphMax 9 Help "State of Cash "; Do not modify any of the other original Attribute definitions from the original APP EDL file.

© 2002 page 22 Example EDL File ENTITY ATM CI ASAP Command "APP\*ATM,DETAIL,RAW,TAB,STATE,AGGREGATE" Detail "APP^,TAB,STATE,DETAIL" DataItems "0 C, 1 I, 2 I, 3 U, 4 I" Enabled YES ErrorState ErrorState Help "My application description" KeyForNode NodeName KeyForObj Domain KeyForRow "Dateymd Time" MaxObjectives 200 SGPFile ASAPXSGP SGPManaged YES SGPSuffix H Reserved NO Version ;”

© 2002 page 23 Required Header Attributes AT NodeName Grid YES Graph NO GraphMax 0 Help "NSK System Name"; AT Sysnum Grid NO Graph NO GraphMax 0 Help "System Number"; AT Domain Grid YES Graph NO GraphMax 0 Help "Domain Name"; AT Status Grid YES Graph YES GraphMax 0 Help "Operational Status” StatePair YES StateIsOp YES StateRule UseStateGraphState TypeData CHAR15; AT OpState Grid NO Graph NO GraphMax 9 Help "Operational State"; AT Dateymd Grid NO Graph NO GraphMax 0 Help "Date of Stats"; AT Time Grid YES Graph YES GraphMax 0 Help "Time of Stats";

© 2002 page 24 Required Header Attributes AT Valid Grid NO Graph NO GraphMax 0 Help "Validity Flag"; AT ET Grid NO Graph NO GraphMax 0 Help "Elapsed Time in Minutes"; AT CT Grid NO Graph NO GraphMax 0 Help "Count of Attributes";\ AT Error Grid YES Graph NO GraphMax 0 Format I4 Help "Collection Error” StatePair YES StateRule UseStateGraphState TypeData INT64; AT ErrorState Grid NO Graph NO GraphMax 9 Help "State of Error"; [ Custom attributes go after the Error and ErrorState Attribute Pair ]

© 2002 page 25 Custom Attributes AT Cash Grid YES Graph NO GraphMax 3000 Format "I6” Help "Cash remaining in ATM” StatePair YES StateRule UseStateGraphState MetricRule "#0" TypeData REAL64; AT S0 Grid NO Graph NO GraphMax 9 Help "State of Cash "; AT Success Grid YES Graph NO GraphMax Format "F6.2” Help ”Success Percent” StatePair YES StateRule UseStateGraphState MetricRule "#1/(#1 + #2) * C100" TypeData REAL64; AT S1 Grid NO Graph NO GraphMax 9 Help "State of Success";

© 2002 page 26 Custom Attributes AT RespTime Grid YES Graph NO GraphMax 10 Format "F10.7” Help "Server response time” StatePair YES StateRule UseStateGraphState MetricRule "#3/(#1 + #2)" TypeData REAL64; AT S2 Grid NO Graph NO GraphMax 9 Help "State of RespTime "; AT Rejects Grid YES Graph NO GraphMax 100 Format "I3" Help "Card rejects" StatePair YES StateRule UseStateGraphState MetricRule "#4" TypeData REAL64; AT S3 Grid NO Graph NO GraphMax 9 Help "State of Rejects";

© 2002 page 27 Complete EDL File ENTITY ATM CI ASAP Command "APP\*ATM,DETAIL,RAW,TAB,STATE,AGGREGATE" Detail "APP^,TAB,STATE,DETAIL" DataItems "0 C, 1 I, 2 I, 3 U, 4 I" Enabled YES ErrorState ErrorState Help "My application description" KeyForNode NodeName KeyForObj Domain KeyForRow "Dateymd Time" MaxObjectives 200 SGPFile ASAPXSGP SGPManaged YES SGPSuffix H Reserved NO Version ; AT NodeName Grid YES Graph NO GraphMax 0 Help "NSK System Name"; AT Sysnum Grid NO Graph NO GraphMax 0 Help "System Number"; AT Domain Grid YES Graph NO GraphMax 0 Help "Domain Name"; AT Status Grid YES Graph YES GraphMax 0 Help "Operational Status" StatePair YES StateIsOp YES StateRule UseStateGraphState TypeData CHAR15; AT OpState Grid NO Graph NO GraphMax 9 Help "Operational State"; AT Dateymd Grid NO Graph NO GraphMax 0 Help "Date of Stats"; AT Time Grid YES Graph YES GraphMax 0 Help "Time of Stats"; AT Valid Grid NO Graph NO GraphMax 0 Help "Validity Flag"; AT ET Grid NO Graph NO GraphMax 0 Help "Elapsed Time in Minutes"; AT CT Grid NO Graph NO GraphMax 0 Help "Count of Attributes"; AT Error Grid YES Graph NO GraphMax 0 Format I4 Help "Collection Error" StatePair YES StateRule UseStateGraphState TypeData INT64; AT ErrorState Grid NO Graph NO GraphMax 9 Help "State of Error"; AT Cash Grid YES Graph NO GraphMax 3000 Format "I6" Help "Cash remaining in ATM" StatePair YES StateRule UseStateGraphState MetricRule "#0" TypeData REAL64; AT S0 Grid NO Graph NO GraphMax 9 Help "State of Cash "; AT Success Grid YES Graph NO GraphMax Format "F6.2” Help ”Success Percent" StatePair YES StateRule UseStateGraphState MetricRule "#1/(#1 + #2) * C100" TypeData REAL64; AT S1 Grid NO Graph NO GraphMax 9 Help "State of TotalRate "; AT RespTime Grid YES Graph NO GraphMax 10 Format "F10.7” Help "Server response time" StatePair YES StateRule UseStateGraphState MetricRule "#3/(#1 + #2)" TypeData REAL64; AT S2 Grid NO Graph NO GraphMax 9 Help "State of RespTime "; AT Rejects Grid YES Graph NO GraphMax 100 Format "I3” Help "Card rejects" StatePair YES StateRule UseStateGraphState MetricRule "#4" TypeData REAL64; AT S3 Grid NO Graph NO GraphMax 9 Help "State of Rejects";

© 2002 page 28 What Next? Load EDL onto NSK Servers Add Include statement to ASAPUSER file Load EDL onto ASAP Client workstations C:\Program Files\Tandem\Asap\Edl Install using Client IDE Test EDL using ASAPXTST API test program Located in ASAPX ISV Implement ASAP API in the Application

© 2002 page 29 Enabling the Client IDE Click here to bring up the Properties sheet

© 2002 page 30 Enabling Import/Export EDL Double click here to bring up the EDL Properties sheet Turn on the IDE to enable File - Import/Export EDL

© 2002 page 31 Client IDE First, click on your EDL file Then click the compile button

© 2002 page 32 ASAPXTST 1+ register please enter: domain^name(): atm\test segment^id(): segment^base(): version(): asap^id:id^len("$ZOO":4): flags(): timeout(): error: 0 error^detail: 0 result: domain registered 2+ The procedure declaration (not shown) is output here.

© 2002 page 33 ASAPXTST 2+ update Domains Currently Registered Dmn# Seg^Offset A^ID F Vs Domain Name $ZOO 0 ATM\TEST select a domain to update(): 0 seg^offset( ): data^item(): 0 value(): 10 math(): error: 0 error^detail: 0 result: domain updated The procedure declaration (not shown) is output here.

© 2002 page 34 Java public class ASAPX extends java.lang.Object { static { System.loadLibrary("ASAPXJNI"); } // Initializer public static final native short AsapRegister(java.lang.String Domain, int[] SegmentOffset, short[] ErrorDetail);

© 2002 page 35 Java public static final native short AsapUpdate (int SegmentOffset, short[] ErrorDetail, short DataItem, long Value, short Math); public static final native short AsapRemove (int SegmentOffset, short[] ErrorDetail, short SegmentID, short Flags); } // class ASAPX

© 2002 page 36 Java public class MainClass extends java.lang.Object { public static void main(java.lang.String[] args) { java.lang.String MyAppDomainName = "CreditCard\\Chicago"; int[] SegmentOffset = new int[1]; short[] ErrorDetail = new short[1]; short ReturnCode; ReturnCode = ASAPX.AsapRegister(MyAppDomainName, SegmentOffset, ErrorDetail); if (ReturnCode != 0)

© 2002 page 37 Java { System.out.println("Error: Could not register " + MyAppDomainName); System.out.println("Detailed error number: " + ErrorDetail[0]); System.out.println("Exiting..."); return; } while (true) { ReturnCode = ASAPX.AsapUpdate(SegmentOffset[0], ErrorDetail, (short)0, 1L, (short)0); if (ReturnCode != 0) { System.out.println("Error: Could not update ASAPX”); System.out.println(“Detailed error number: " + ErrorDetail[0]); break; }

© 2002 page 38 Java // Get next request } // while loop ReturnCode = ASAPX.AsapRemove(SegmentOffset[0], ErrorDetail, (short)0, (short)1); if (ReturnCode != 0) { // Error removing our domain System.out.println("Error: Could not remove " + MyAppDomainName); System.out.println("Detailed error number: " + ErrorDetail[0]); System.out.println("Exiting..."); } } // main } // class MainClass

© 2002 page 39 C++ #ifndef __ASAPBASEH #define __ASAPBASEH #include "zaspxc.h” class AsapBase { public: AsapBase(); virtual ~AsapBase(); short AsapRegister(short flags=0); short AsapUpdate(short dataItem, long long val, short math=0); protected: bool Connected; long long LastTime; char Domain[64]; long SegmentOffset; }; #endif // __ASAPBASEH

© 2002 page 40 C++ #include “ASAPBASE.h” #include short AsapBase::AsapRegister(short flags) { short Error, ErrorDetail; long long ThisTime = JULIANTIMESTAMP() - LastTime, RetryTime = ; if(Connected) return 0; if(ThisTime < RetryTime) return 0; LastTime = JULIANTIMESTAMP(); strcopy(Domain,”Test\\Domain”); error = ASAP_REGISTER_(Domain, strlen(Domain), &SegmentOffset,&ErrorDetail); if(error == 0) Connected = true; else {

© 2002 page 41 C++ short AsapBase::AsapUpdate(short dataItem, long long value, short math) { short Error, ErrorDetail; short Flags = 0; if(!Connected) { error = AsapRegister(Flags); if (error != 0) return error; if (!Connected) return -1; } error = ASAP_UPDATE_(SegmentOffset, &ErrorDetail, dataItem, value, math); if (error != 0) { }

© 2002 page 42 pTAL int(32) asap^offset := 0d,.ext asap^offset2; ?nolist, source zaspxtal ?nolist, source $system.system.asapxdec ?library $system.system.asapxlib proc do^asap(ditem,val,math) extensible; int ditem; int(64) val; int math; forward; proc do^asap(ditem,val,math) extensible; int ditem; int(64) val; int math; begin string.dname[0:11] := ["NONSTOP\DEMO"]; int err := 0, err^dtl := 0; if asap^offset = 0d then := $xadr(asap^offset); if (err := asap_register_(dname:12, asap^offset2, err^dtl)) <> 0 then asap^offset := 0d; end; if asap^offset = 0d then return;

© 2002 page 43 pTAL if (err := asap_update_(asap^offset,err^dtl,ditem,val, $optional($param(math),math))) <> 0 then begin err := asap_remove_(asap^offset,err^dtl,,1); asap^offset := 0d; end; end; -- of proc do^asap

© 2002 page 44 ASAPX Feature Review Conversion to ASAP DOTs Multiple Entity/EDL support Built-in attributes Aggregation Status/OpState API Text constants Register timeout

© 2002 page 45 ASAPX Futures DataItems increased and configurable In-Memory record retrieval DataItem aggregation control No History mode Java Package C++ Class Library HP OpenView integration

© 2002 page 46 Information Resources Presentations Papers, FAQs Online demonstration Education TUT CD #30 Oct Manuals TIM Independent Products CD