设置 Agent
编辑设置 Agent
编辑需求
编辑此项目需要 Swift 5.7
,旨在用于基于 Swift 的移动应用。
其他平台需求
平台 | 版本 |
---|---|
|
|
|
|
|
|
|
|
添加 Agent 依赖项
编辑将 Elastic APM iOS Agent 添加到您的 Xcode 项目或您的 Package.swift
中。
以下是如何将 程序包依赖项 添加到标准 Xcode 项目中的说明。
有关将依赖项添加到 Package.swift 的详细信息,请参阅 添加对另一个 Swift 程序包的依赖项。以下是一个有用的代码片段
package.swift
:
Package( dependencies:[ .package(name: "apm-agent-ios", url: "https://github.com/elastic/apm-agent-ios.git", from: "1.0.0"), ], targets:[ .target( name: "MyApp", dependencies: [ .product(name: "ElasticApm", package: "apm-agent-ios") ] ), ])
初始化代理
编辑将 Agent 添加为依赖项后,必须对其进行初始化。
如果您使用 SwiftUI
构建您的应用,请将以下内容添加到您的 App.swift
中
import SwiftUI import ElasticApm class AppDelegate : NSObject, UIApplicationDelegate { func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey : Any]? = nil) -> Bool { var config = AgentConfigBuilder() .withServerUrl(URL(string:"http://127.0.0.1:8200")) .withSecretToken("<SecretToken>") .build() ElasticApmAgent.start(with: config) return true } } @main struct MyApp: App { @UIApplicationDelegateAdaptor(AppDelegate.self) var appDelegate init() { } var body: some Scene { WindowGroup { ContentView() } } }
如果您不使用 SwiftUI
,则可以将其添加到您的 AppDelegate 文件中
AppDelegate.swift
import UIKit import ElasticApm @main class AppDelegate: UIResponder, UIApplicationDelegate { func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { var config = AgentConfigBuilder() .withServerUrl(URL(string:"http://127.0.0.1:8200")) .withSecretToken("<SecretToken>") .build() ElasticApmAgent.start(with: config) return true } }