中文版本 APMPlus SDK. Enter official website to read the introduction of SDK capabilities and access. APMPlus
- git clone https://github.com/volcengine/APMInsight_iOS.git --branch master
- cd APMInsight_iOS/Example
- bundle exec pod install
- open APMInsight_iOS.xcworkspace
- The demo APP has integrated all capabilities of APMPlus.
- You can make errors and performance data in the demo APP.
- Reset the appID and appToken in APMInitialViewController.m, then the performance data will be uploaded to your own console.
- iOS 10.0+
- Xcode 14.0+
APMInsight_iOS is available under the MIT license. See the LICENSE for more info.
- feature: support custom disk usage and expiration time of alog
- bugfix: stability issues
- optimization: optimize the abnormal data processing logic of page loading time
- feature: support manual configuration of automation scenarios to prevent false positives of OOM in automation scenarios
- feature: SDK configuration delivery support SIGPIPE
- feature: support data reporting overseas
- bugfix: fix the problem of OOM when reporting data if the network is abnormal
- optimization(Incompatible): the minimum system version supported by the SDK is changed to iOS 10
- optimization: optimize the processing logic when the disk space is insufficient, and throw exceptions in advance
- optimization: optimize the verification logic of userID and deviceID (offline verification plug-in)
- feature: access offline verification plug-in, which can visually verify the SDK access status. For details, please refer to Link
- bugfix: fix custom filters losing in some modules
- bugfix: fix MemoryGraph crash on iOS 18
- feature(Incompatible): remove armv7
- bugfix: UITrackers supports multiple UIWindow
- bugfix: fix symbol duplicate
- bugfix: fix the OOM misjudgment problem when using UIWindowSceneDelegate
- bugfix: fix custom log report error
- bugfix: fix data migration crash
- bugfix: fix BootingProtect occasionally failing to return OOM data
- bugfix: fix alog crash
- feature: add APMPlus log, and support cloud command or actively reporting
- feature: new version of Hybrid monitoring
- bugfix: fix the issue of missing nodes in MemoryGraph
- optimization: optimize the reporting strategy of some logs to reduce the risk of ANR
- optimization: support filtering of test scenarios in OOM crash determination
- bugfix: fix function issue when calling in C++ files
- optimization: optimize the reporting strategy of startup time to ignore abnormal data
- feature: add Apple Privacy manifest
- bugfix: fix the OOM misjudgment problem in some scenarios
- bugfix: fix alog crash
- bugfix: fix UITracker crash
- bugfix: fix occasional crash
- feature: support injecting custom network monitoring records
- bugfix: fix priority inversion
- feature: virtual memory monitoring
- optimization: improve disk monitoring logs
- bugfix: fix watchdog in MemoryGraph
- bugfix: fix incompatibility issues with historical data
- bugfix: fix missing data on page load
- bugfix: fix symbol conflict
- optimization: optimize console log output text
- optimization: optimize data encryption logic
- optimization: optimize library dependencies
- feature: add compatibility APIs for page loading
- bugfix: fix the crash of network monitoring in some scenarios
- optimization: optimize the console log output logic
- feature: add custom cloudCommand
- feature: add battery metrics from MetricKit
- feature: support custom log for component
- bugfix: fix repeated reporting of CPU exception logs in some cases
- bugfix: fix the problem that some crash logs in iOS 16 could not obtain valid stacks
- bugfix: fix the crash after triggered a memory problem at debugging environment
- feature: add CDN information
- bugfix: fix symbol conflict
- feature: actively report the alog file to support the sampling rate
- bugfix: fix the problem that Crash Binary Image is missing
- bugfix: fix the stuck problem that may be caused by getting the disk size
- bugfix: fixed the problem of circular call in Hybrid
- optimization: change the SessionTracker to the default dependency. If the SessionTracker module has not been integrated before, the event volume consumption may increase after the upgrade
- feature: support ignoring the crash when the application exits
- bugfix: fixed the OOM misjudgment problem in some scenarios
- feature: Coredump
- feature: support using custom network library to report data
- optimization: limit the frequency of network status interface calls
- feature: GWPASan
- bugfix: stability issues
- bugfix: fix mistake of OS version in some logs
- feature: support fetching configuration for userID
- feature: custom dimension for PV logs
- optimization: optimize the trigger timing of some requests
- bugfix: fix some stability issues
- bugfix: Improve compatibility with dynamic libraries
- bugfix: fix NSURLSession.sharedSession becoming unavailable in some cases
- bugfix: fix MemoryGraph stuck in some cases
- optimization: optimize the log reporting logic when the event balance is insufficient
- feature: disk monitoring
- feature(Incompatible): interface authentication
- bugfix: fix memory leak
- bugfix: fix some data collection error
- bugfix: fix memory leak
- bugfix: fix page records error
- feature: support configuring performance data reporting interval
- bugfix: fix Global subspec protocol mismatch
- bugfix: fix network decision crash on iOS 15
- bugfix: fix the misjudgment problem of OOM
- bugfix: fix crash when network unavailable for SDK monitor
- feature: custom configuration support Prewarm threshold
- bugfix: fix Flutter configuration not taking effect
- feature: add MetricKit subspec
- feature: full link tracing - connect client network log with server log
- optimization: optimize the problem that the launch time uploaded is too large
- optimization: optimize console error log
- bugfix: fix problem that network monitoring unavailable on low system
- feature: add BootingProtect subspec
- bugfix: fix memory leak in network monitor
- optimization: time-consuming of network monitor during initialization
- bugfix: fix the compatibility issue of network monitor in swift
- bugfix: fix the problem that the device may fail to report the custom log when using the 12-hour clock
- optimization: compatible with custom log reporting protocol
- optimization: optimize custom log reporting time disorder
- optimization: optimize the problem that log retrieval using user_id cannot be delivered normally
- optimization: optimize console log to reduce duplicate messages
- bugfix: fix crash when use class object as network delegate
- feature: deadlock detector
- bugfix: fix crash when working with Firebase Performance
- feature: zombie object detection online
- feature: userException interface supports passing in NSException
- optimization: change the domain for Saas
- bugfix: performance data reporting is not timely
- feature: add debug log for CPU Monitor
- feature: CPU Monitor
- optimization: compliance requirements
- feature: watchdog monitor supports component perspective
- optimization: split device registration module
- bugfix: network monitor may lead to OOM in some cases
- optimization: destruction process
- optimization: hook scheme
- bugfix: missing fields
- bugfix: symbol conflicts
- bugfix: uploading apmlogs may crash
- feature: add OneKit start task
- optimization: dsym-uploading script
- bugfix: network monitoring may cause some callbacks to fail
- optimization: crash protection logic
- bugfix: header lost
- bugfix: crash when app exits
- bugfix: network config
- bugfix: start module api
- feature: crash protector
- feature: extension crash monitor
- optimization: network monitor refactor
- feature: enable default monitors
- optimization: start analysis
- bugfix: fix compiler error
- feature: custom log and cloudCommand
- bugfix: OOM log lose
- bugfix: deviceID may be null in some case
- feature: report launch log
- bugfix: fix crash in iOS 15 and arm64e device
- optimization: optimize the judgment for network error log
- bugfix: fix symbol conflict
- feature: component crash monitor support dynamic library
- bugfix: fix the loss of network error log
- bugfix: fix config not fetch
- bugfix: fix symbol conflict
- feature: add flutter monitor
- bugfix: fix network code error
- optimization: update OneKit to 1.1.13
- bugfix: fix the loss of header files
- optimization: optimize regular matching
- optimization: optimize regular matching
- bugfix: fix symbol conflict
- optimization: remove some hook
- optimization: modified UITracker to start synchronously
- optimization: update OneKit to 1.1.9
- optimization: component monitor support custom deviceID
- bugfix: Custom-error add the validity of incoming parameters
- bugfix: fix incorrect judgment of component crash
- bugfix: fix compile error
- bugfix: deviceID service error
- feature: event analysis
- feature: custom deviceID
- bugfix: solve some category conflict
- bugfix: solve conflict with BGFMDB
- feature: enable Bitcode
- bugfix: fix addScriptMessageHandler crash in Hybrid module
- feature: viewControllers tracing
- feature: more NSNotifications
- optimization: bundle resources search path
- feature: add custom information into MemoryGraph log
- bugfix: solve conflicts with SSZipArchive
- feature: some NSNotifications
- bugfix: network monitor certificates verification failed in particular scenes
- bugfix: request settings not effective
- feature: network type support 5G
- bugfix: solve conflicts with zipArchive
- feature: update MemoryGraph config
- feature: DSYM uploader script
- feature: add debug log