Copyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|应用性能监控云服务Oracle应用管理云服务之一Copyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|AgendaOracleConfidential–Internal/Restricted/HighlyRestricted2What’sApplicationPerformanceMonitoring&Why?NowYouSeeMeWhyOracle?Q&A1234Copyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|3如果出现问题…你知道问题在哪里吗?-应用的性能如何?-用户有没有遇到问题?-底层基础设施对应用负载和的影响如何?-如何拿到生产环境的日志?-哪个地方最慢?-JAVA应用的性能如何?MobileEndUserDatabaseJavaIntegrationProcessMessagingBigDataAnalyticsCopyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|什么是APM(ApplicationPerformanceMonitoring)?•提供信息给开发和运维团队,快速找到并解决应用问题•应用的性能深度可见,从用户的体验,到应用服务器的请求,到应用日志。Copyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|AgendaOracleConfidential–Internal/Restricted/HighlyRestricted5What’sApplicationPerformanceMonitoring&Why?NowYouSeeMeWhyOracle?Q&A12345Copyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|6APM的主要功能交易深度可见关联日志分析用户体验监控BigDataAnalyticsDatabaseJavaIntegrationProcessMessagingMobileEndUser弹性应用模型、RESTAPI、阈值,支持本地部署和云服务器使用情况监控Copyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|最终用户体验监控OracleConfidential–Internal/Restricted/HighlyRestricted7Copyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|最终用户体验监控8•EndUsers从用户的视角看,应用的性能如何.–用户如何使用我的应用?–体验好吗?–用户有没有遇到问题?AppServersIntegrationDatabaseEndUsersBrowserTagCopyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|9监控单个页面的性能•洞察最终用户的真实体验•知道不好的体验是服务端的问题还是浏览器的问题•自动统计应用页面的访问性能•对相关联的服务端请求进行下钻•PageLoadTime,&Change%•PageURL•FirstByte,PageReady,Interactive•PageViewspermin•Errors%•AjaxCall•PageLoadTimeTrend•Avg.PageLoadBreakdownTrend•PageViews&ErrorsTrend•Metrics/Geography,AjaxCalls,ServerRequestCopyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|监控单个Ajax的性能•知道应用中Ajax的性能,包括调用时间•Ajax请求的页面和他们的服务端自动关联10•AjaxCall•AjaxCallResponseTime•CallProcessing•CallResponse•CallperMin•Errors%•AjaxCallResponseTimeTrend•CallProcessingandCallResponseTrend•CallperMinTrend•Error%TrendCopyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|交易深度可见OracleConfidential–Internal/Restricted/HighlyRestricted11Copyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|RequestsTypes12•ServerRequests服务端应用的操作和资源的性能–我的应用比较复杂,问题出在哪里?–是不是服务端的每个应用组件的性能都达到预期?–应用的哪一层最慢?ApplicationAppServersIntegrationDatabaseEndUsersAPMAgentAPMAgentAPMAgentCopyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|APMCloudService•所有应用的请求自动分类,度量,汇总•可看清请求的不同操作之间的调用关系和流向•跨越不同层的分类诊断并可下钻到单个的SQL请求•自动捕获最慢的请求实例和应用失败13ApplicationRequestTypeMonitoring•ServeletName•RequestResponseTime•External,AppServer,DBResponse•Calls•Errors%•HeapMemory•CPUUsage•ApplicationFlow•DiagramControls•NodeInformationCopyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|APMCloudService•列出调用方法和服务端请求的性能趋势•对有问题的调用方法进行过滤和分类•被监控的外部调用可以被导航,用户可以隔离到特定的代码层面的问题14Links•MethodCalls•Trend•Calls•Error%•SortingCopyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|APMCloudService•查看服务端请求如何被调用,如何使用资源•从调用者Caller开始导航,查看请求发起者15Callers•Callers•TotalCalls•Avg.ResponseTimeCopyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|APMCloudService•可看到数据库的SQL语句性能•过滤和分类比较慢的和失败的SQL语句•查看超时的SQL语句的性能•下钻到相关的数据库日志16Database•DatabaseQueriesResponseTime•Calls&Errors%Copyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|APMCloudService•查看性能差的请求的详细信息•在代码层面精确定位性能问题和错误•统计层内,层之间的调用花费的时间,可到方法级别•下钻到相关联的应用服务器,数据库,外部应用服务器的日志.17RequestsInstance•TierTime•CallTree•Faulty•LogCopyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|关联日志分析OracleConfidential–Internal/Restricted/HighlyRestricted18Copyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|LogAnalysis19•LogAnalysis跨越应用堆栈,提取,标准化,分类日志数据应用和基础设施的日志进行上下文关联–在日志里面有没有其他信息可以帮助我诊断应用的问题?–我已经定位应用的哪一部分性能慢或有问题,但是为什么慢?ApplicationAppServersIntegrationDatabaseEndUsersCopyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|ApplicationPerformanceMonitoringLogAnalysis•从传统的APM工具应用监控扩展到集成日志分析。•在特定的时间段,通过隔离和快速诊断步骤,应用,基础设施,和资源的日志同应用请求路径的上下文关联。20Copyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|服务器监控和告警OracleConfidential–Internal/Restricted/HighlyRestricted21Copyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|ApplicationResources22•ApplicationResources应用负载和资源的度量相关联.–我的负载性能问题是不是和基础设施资源相关联?–我的应用是不是消耗了太多的基础设施的资源?–我的资源依赖的某些东西是不是问题?ApplicationAppServersIntegrationDatabaseEndUsersCopyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|OracleAPMCloudService•颗粒化应用服务器度量,包括主机,JVM和域的资源(CPU,内存,线程)•快速隔离应用服务资源限制导致的问题•查看请求对应用服务器资源的使用情况23ApplicationServerPerformance•AppServer•MemoryUsage•TimeinGC•CPUUsage•ResponseTime•LoadTime•HeapUsageTrend•GarbageCollectionTrendCopyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|ThresholdsandAlerts•对页面和Ajax的性能设置阈值•但超过阈值时收到告警信息•根据告警的上下文下钻,加速问题的隔离和解决24•AlertSourceAPage/Ajax•Reason,e.g•AlertRuleTriggeredCopyright©2015,Oracleand/oritsaffiliates.Allrightsreserved.|OracleConfidential–Internal/Restricted/HighlyRestricted2525缩短解决应用问题的时间持续监控应用,解决对最终用户有影响的问题告警影响用户的性能瓶颈无缝定位在整个应用中的问题,并迅速解决应用的问题从上下文的应用日志到应用负载打破开发和运维之间的障碍真相的单一来源,真正的应用性能监测,深入到代码级和SQL查询的可视化提供开发者可以访问孤岛中和原来无法使用的数据驱动