websight visualizing the execution of web services
DESCRIPTION
Websight Visualizing the Execution of Web Services. Wim De Pauw, Bob Hoch, Sophia Krasikov, Michelle Lei, John Morar, Raju Pavuluri, Amit Phalgune, Ed Pring, Senthil Velayudham Contact: [email protected]. Outline. Motivation Debugging Web Services Profiling and understanding Web Services - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/1.jpg)
IBM TJ Watson Research Center
Workshop on Testing, Analysis and Verification of Web ServicesJuly 11, 2004 Boston, MA
WebsightVisualizing the Execution of Web Services
Wim De Pauw, Bob Hoch, Sophia Krasikov, Michelle Lei, John Morar, Raju Pavuluri, Amit Phalgune, Ed Pring, Senthil Velayudham
Contact: [email protected]
![Page 2: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/2.jpg)
2
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Outline
Motivation
Debugging Web Services
Profiling and understanding Web Services
Dealing with complexity
Technology
Conclusions
![Page 3: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/3.jpg)
3
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
What are Web Services?
"A WSDL described interface that defines a collection of network accessible operations"
Modular Composed Described Published Found Bound Invoked
![Page 4: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/4.jpg)
4
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Evolution of Web Services
Internal Enterprise Application Integration
External Integration
Dynamic adaptation in e-business
=> Lingua Franca for (loosely coupled) distributed systems
![Page 5: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/5.jpg)
5
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Web Services: the Challenge
Do you know how your Web Services are interacting ?
Ever tried to read their trace logs?
Ever tried to collate ten trace logs?
Where are the bottlenecks?
Is your workflow correct?
![Page 6: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/6.jpg)
6
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Websight: Problem Determination for Web Services
Debugging and understanding
Analysis at application level
Understand message flow of Web Services in complex applications
Total processing time vs. business logic time
Experimental research tool
![Page 7: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/7.jpg)
7
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
BPEL Engine
PartnerWorld
SAP-F
Compatibility
Exclusivity
Check warranty
period
Check Model &
Serial number
--
------
---
--------
Web Services wrapperValidation Functions
BP
Mod
elfo
r SP
V
Java to Web Services
Sample Target: eServicePac
![Page 8: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/8.jpg)
8
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Lifecycle
Business requirementsCountry= Utopia Order entry scenario
e-ServicePac type 1 - tied order 2 – discrete order (h/w specified)
3 – discrete order(no h/w specified)
Warranty and maintenance option 1,3 A 1,2,3,4 A A
Installation 1,3 1,2,3,4
Maintenance B 1,2,5 B B
Example 1,2,3
Example 3 3
Design
ImplementDeploy
OperationMaintenance
Problem Determination
![Page 9: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/9.jpg)
9
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Websight demo
![Page 10: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/10.jpg)
10
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Debugging Web Services
Syntax errors
Semantic errors
“Resource unavailable” errors
Business logic errors
![Page 11: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/11.jpg)
11
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Syntax Errors
Often relate to representing “unusual values”
Example: ambiguous type conversions XML – Java– In subsequent versions of a SOAP engine:
java.util.GregorianCalendar xsd:datejava.util.GregorianCalendar xsd:dateTime
Example: encoding of null String vs. empty String
Example: problem with “out of range” values
![Page 12: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/12.jpg)
12
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Find Syntax Errors by Inspecting the Content
![Page 13: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/13.jpg)
13
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Semantic Errors: Discordant Meanings
Even if the syntax is correct, service providers and consumers may associate different meanings to certain expressions
Examples:
–Empty field means: “wildcard” or “missing information”?
–Timestamp (omitting or ignoring time zones)
2004-07-11T10:49:24.938000-04:00
![Page 14: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/14.jpg)
14
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Semantic Errors: Unexpected Modes of Execution
Example:
–Client node sends (unexpectedly!) two identical messages for every transaction.
–Functional Testing did not reveal this problem
![Page 15: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/15.jpg)
15
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Semantic Error: Unexpected Modes of Execution
Unexpected Flow Order:
Architect did not expect “stackingChecker” before “compatibilityChecker” because workflow engine was in parallel instead of serial mode.
![Page 16: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/16.jpg)
16
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
“Resource Unavailable” Errors
Find out if/where a node is down
Effect / cause may be in different places
Examples:
–Database server down, workflow engine continues
–Server throws an HTTP error, fed into SOAP parser
We use reactive approach
Proactive approach: synthetic heartbeat
![Page 17: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/17.jpg)
17
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Business logic error
Example:
– For this operation we didn’t need to call StackingChecker service
– Unit testing did not expose this problem – since the existing test data generated the correct result
![Page 18: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/18.jpg)
18
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Profiling is Understanding
Where is time spent?
Network vs. business logic?
Chatty communication?
![Page 19: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/19.jpg)
19
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Profiling: Sorting Statistics
Table view helps find outliers by sorting Network Duration in table view for several transactions
Selecting the outliers in table highlights corresponding messages in other views
![Page 20: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/20.jpg)
20
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Understanding Web Services Configurations Example: Two concurrent Transactions using two workflow engines
![Page 21: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/21.jpg)
21
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Understanding Web Services Configurations
From Design Document SCM Traced Topology SCM
Supply Chain Management from WS-I
![Page 22: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/22.jpg)
22
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Dealing with complexity
High traffic, high number of nodes, complex interactions
Pattern extraction
Selective tracing
![Page 23: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/23.jpg)
23
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Fifty Concurrent Transactions
Dealing with complexity: Pattern Extraction
![Page 24: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/24.jpg)
24
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Selective Tracing for Heavy Loads
Tracing everything during heavy load is undesirable: too much perturbation, too much data
Start with “marked” transaction (carrying correlator)
Tracing will be turned on when this transaction is handled
Reduces amount of data to be traced
Easier to understand 1 typical transaction than 10000
![Page 25: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/25.jpg)
25
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Technology: based on Eclipse and Hyades
Hyades:
Integrated test, trace and monitoring environment– Open source basic infrastructure– Tool interoperability across testing/profiling process– www.eclipse.org/hyades
Components– Information model (EMF)– Communication framework (Remote Agent Controller)– Data collection
![Page 26: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/26.jpg)
26
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Typical architecture for existing testing/profiling tools
![Page 27: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/27.jpg)
27
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Hyades provides a common infrastructure
![Page 28: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/28.jpg)
28
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Deployment
1) Collect runtimeinformation
2) Present to user
![Page 29: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/29.jpg)
29
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Websight Runtime (experimental setup)
Websight Interface
AxisParser
WebsphereParser
Websight Runtime
Non-SOAPprotocols
Apache SOAPParser
Websight Trace FileVisualizer
WebsphereRuntimeCorrelationLogging Selective
Tracing
Remote Agent Controller
![Page 30: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/30.jpg)
30
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Correlating Distributed Events
Problem : correlating messages
Goal : trace end-to-end message flow across system
![Page 31: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/31.jpg)
31
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Correlating Distributed Events
Correlator technology:– ARM correlator technology
Web Services correlator– Websight SOAP header carries correlator
– Propagation through business logic handled by middleware
AttachCorrelator
ReceiveCorrelator
ReceiveCorrelator
AttachCorrelator
![Page 32: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/32.jpg)
32
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Summary
Debugging Web Services requires new methodologies and tools
Complexity at the application level
Opportunities for work flow
![Page 33: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/33.jpg)
IBM TJ Watson Research Center
Workshop on Testing, Analysis and Verification of Web ServicesJuly 11, 2004 Boston, MA
Contact:[email protected]
![Page 34: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/34.jpg)
34
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Backup foils
![Page 35: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/35.jpg)
35
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
New Order Transaction
![Page 36: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/36.jpg)
36
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Existing Order Transaction
![Page 37: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/37.jpg)
37
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Two Concurrent Transactions using Two Workflow Engines
![Page 38: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/38.jpg)
38
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Navigation between Views
…highlights corresponding items in the other views
Selecting an item in one view…
![Page 39: Websight Visualizing the Execution of Web Services](https://reader036.vdocument.in/reader036/viewer/2022081520/568167b3550346895ddd024d/html5/thumbnails/39.jpg)
39
IBM T.J. Watson Research Center
Websight - Visualizing the Execution of Web Services IBM TJ Watson Research © 2004 IBM Corporation
Supply Chain Management: Maximal Transaction(understanding the complex flow)