快速开始

日志服务 BLS

  • 功能发布记录
  • 产品描述
    • 产品介绍
    • 使用限制
  • 产品定价
  • 快速入门
    • 简介
    • 安装收集器
    • 创建日志集
    • 创建传输任务
    • 日志分析和报警
    • 创建投递任务
    • 创建日志集
    • 简介
    • 日志分析和报警
    • 创建投递任务
    • 创建传输任务
    • 安装收集器
  • 操作指南
    • 百度智能云环境准备
    • 概览
    • 收集器
      • 主机安装收集器
      • 在k8s环境安装收集器
      • 设置收集器启动参数
      • 收集器管理
      • 收集器发行版本
    • 查询分析
      • 日志查询
      • 检索语法
      • SQL语法
    • 日志采集
      • 传输任务采集
        • 管理传输任务
        • 创建传输任务
      • 使用Kafka协议上传日志
    • 日志管理
      • 日志集管理
      • 日志视图
    • 仪表盘
      • 概述
      • 管理仪表盘
      • 管理仪表盘图表
    • 报警管理
      • 报警概述
      • 报警策略
        • 管理报警策略
        • 触发条件
      • 报警通知
        • 报警通知模版
        • 报警回调
      • 报警执行统计
      • 报警历史
    • 数据处理
      • 定时SQL分析
        • 创建定时SQL分析任务
        • 管理定时SQL分析任务
      • 日志投递
        • 日志投递概述
        • 创建投递任务
        • 管理投递任务
      • 数据加工
        • 数据加工函数总览
        • 事件操作函数
        • 字段值提取函数
        • 字段操作函数
        • 映射富化函数
        • 流程控制函数
      • 实时消费
    • 日志应用
      • 智能诊断
    • 多用户访问控制
  • 开发指南
    • API参考
      • API概述
      • 通用说明
      • 名词解释
      • 接口概览
      • 通用错误码
      • 服务域名
      • API功能发布记录
      • 日志组Project相关接口
        • 创建日志组CreateProject
        • 更新日志组UpdateProject
        • 删除日志组DeleteProject
        • 获取日志组列表ListProject
        • 获取日志组详情DescribeProject
      • 日志集LogStore相关接口
        • 创建日志集CreateLogStore
        • 修改日志集UpdateLogStore
        • 删除日志集DeleteLogStore
        • 获取日志集列表ListLogStore
        • 获取日志集详情DescribeLogStore
        • 批量获取日志集BatchGetLogStore
      • 日志流LogStream相关接口
        • 获取日志流列表ListLogStream
      • 日志记录LogRecord相关接口
        • 检索分析日志QueryLogRecord
        • 直方图接口QueryLogHistogram
        • 推送日志PushLogRecord
        • 获取日志记录PullLogRecord
      • 日志视图相关接口
        • 创建日志视图CreateLogStoreView
        • 修改日志视图UpdateLogStoreView
        • 删除日志视图DeleteLogStoreView
        • 获取日志视图列表ListLogStoreView
        • 获取日志视图详情DescribeLogStoreView
      • 下载日志Download相关接口
        • 创建下载任务CreateDownloadTask
        • 删除下载任务DeleteDownloadTask
        • 获取下载任务列表ListDownloadTask
        • 获取下载任务地址GetDownloadTaskLink
        • 获取下载任务详情DescribeDownloadTask
      • 快速查询FastQuery相关接口
        • 创建快速查询CreateFastQuery
        • 更新快速查询UpdateFastQuery
        • 删除快速查询DeleteFastQuery
        • 获取快速查询列表ListFastQuery
        • 获取快速查询详情DescribeFastQuery
      • 传输任务Task相关接口
        • 创建传输任务CreateTask
        • 更新传输任务UpdateTask
      • 报警Alarm相关接口
        • 创建报警策略CreateAlarmPolicy
        • 启用报警策略EnableAlarmPolicy
        • 获取报警历史详情DescribeAlarmRecord
        • 更新报警策略UpdateAlarmPolicy
        • 删除报警策略DeleteAlarmPolicy
        • 获取报警执行列表ListAlarmExecutions
        • 获取报警策略列表ListAlarmPolicy
        • 获取报警策略详情DescribeAlarmPolicy
        • 获取报警执行统计ListAlarmExecutionStats
        • 检验报警策略执行条件ValidateAlarmCondition
        • 禁用报警策略DisableAlarmPolicy
        • 获取报警历史列表ListAlarmRecord
        • 检验报警策略查询语句ValidateAlarmPolicySQL
      • 日志投递LogShipper相关接口
        • 创建日志投递CreateLogShipper
        • 更新日志投递UpdateLogShipper
        • 删除日志投递任务DeleteSingleLogShipper
        • 批量设置日志投递任务状态BulkSetLogShipperStatus
        • 设置日志投递任务状态SetSingleLogShipperStatus
        • 获取日志投递记录ListLogShipperRecord
        • 批量删除日志投递任务BulkDeleteLogShipper
        • 获取日志投递列表ListLogShipper
        • 获取日志投递详情GetLogShipper
      • 日志集模板相关接口
        • 创建日志集模板CreateLogStoreTemplate
        • 更新日志集模板UpdateLogStoreTemplate
        • 删除日志集模板DeleteLogStoreTemplates
        • 获取日志集模板列表DescribeLogStoreTemplates
        • 获取日志集模板详情DescribeLogStoreTemplate
      • 索引Index相关接口
        • 创建索引CreateIndex
        • 更新索引UpdateIndex
        • 删除索引DeleteIndex
        • 获取索引详情DescribeIndex
      • 兼容Elasticsearch相关接口
        • 检索和分析BLS日志 AsyncSearch
        • 查询索引列表 ResolveIndex
        • 推荐字段取值 TermsEnum
        • 获取索引字段列表 FieldCaps
    • SDK参考
      • SDK隐私政策
      • SDK开发者个人信息保护合规指引
      • Android & ISO SDK下载
      • Go SDK
        • 概述
        • 初始化
        • 安装SDK工具包
        • Project操作
        • 日志集LogStore操作
        • 日志流LogStream操作
        • 日志记录LogRecord操作
        • 日志投递LogShipper操作
        • 快速查询FastQuery操作
        • 下载任务操作
        • 索引Index操作
        • 版本发布记录
      • iOS SDK
        • 概述
        • 快速开始
        • 版本发布记录
      • Java SDK
        • 概述
        • 日志记录LogRecord操作
        • 安装SDK工具包
      • Android SDK
        • 概述
        • 快速开始
        • 版本发布记录
    • 导入SLS采集配置
  • 最佳实践
    • 使用同环比作为报警触发条件
    • 通过Grafana使用BLS
    • 使用Grafana访问日志服务的Elasticsearch兼容接口
    • BLS接入Kibana
  • 常见问题
    • 常见问题总览
    • 配置类问题
    • 故障类问题
  • 日志服务等级协议SLA
所有文档
menu
没有找到结果,请重新输入

日志服务 BLS

  • 功能发布记录
  • 产品描述
    • 产品介绍
    • 使用限制
  • 产品定价
  • 快速入门
    • 简介
    • 安装收集器
    • 创建日志集
    • 创建传输任务
    • 日志分析和报警
    • 创建投递任务
    • 创建日志集
    • 简介
    • 日志分析和报警
    • 创建投递任务
    • 创建传输任务
    • 安装收集器
  • 操作指南
    • 百度智能云环境准备
    • 概览
    • 收集器
      • 主机安装收集器
      • 在k8s环境安装收集器
      • 设置收集器启动参数
      • 收集器管理
      • 收集器发行版本
    • 查询分析
      • 日志查询
      • 检索语法
      • SQL语法
    • 日志采集
      • 传输任务采集
        • 管理传输任务
        • 创建传输任务
      • 使用Kafka协议上传日志
    • 日志管理
      • 日志集管理
      • 日志视图
    • 仪表盘
      • 概述
      • 管理仪表盘
      • 管理仪表盘图表
    • 报警管理
      • 报警概述
      • 报警策略
        • 管理报警策略
        • 触发条件
      • 报警通知
        • 报警通知模版
        • 报警回调
      • 报警执行统计
      • 报警历史
    • 数据处理
      • 定时SQL分析
        • 创建定时SQL分析任务
        • 管理定时SQL分析任务
      • 日志投递
        • 日志投递概述
        • 创建投递任务
        • 管理投递任务
      • 数据加工
        • 数据加工函数总览
        • 事件操作函数
        • 字段值提取函数
        • 字段操作函数
        • 映射富化函数
        • 流程控制函数
      • 实时消费
    • 日志应用
      • 智能诊断
    • 多用户访问控制
  • 开发指南
    • API参考
      • API概述
      • 通用说明
      • 名词解释
      • 接口概览
      • 通用错误码
      • 服务域名
      • API功能发布记录
      • 日志组Project相关接口
        • 创建日志组CreateProject
        • 更新日志组UpdateProject
        • 删除日志组DeleteProject
        • 获取日志组列表ListProject
        • 获取日志组详情DescribeProject
      • 日志集LogStore相关接口
        • 创建日志集CreateLogStore
        • 修改日志集UpdateLogStore
        • 删除日志集DeleteLogStore
        • 获取日志集列表ListLogStore
        • 获取日志集详情DescribeLogStore
        • 批量获取日志集BatchGetLogStore
      • 日志流LogStream相关接口
        • 获取日志流列表ListLogStream
      • 日志记录LogRecord相关接口
        • 检索分析日志QueryLogRecord
        • 直方图接口QueryLogHistogram
        • 推送日志PushLogRecord
        • 获取日志记录PullLogRecord
      • 日志视图相关接口
        • 创建日志视图CreateLogStoreView
        • 修改日志视图UpdateLogStoreView
        • 删除日志视图DeleteLogStoreView
        • 获取日志视图列表ListLogStoreView
        • 获取日志视图详情DescribeLogStoreView
      • 下载日志Download相关接口
        • 创建下载任务CreateDownloadTask
        • 删除下载任务DeleteDownloadTask
        • 获取下载任务列表ListDownloadTask
        • 获取下载任务地址GetDownloadTaskLink
        • 获取下载任务详情DescribeDownloadTask
      • 快速查询FastQuery相关接口
        • 创建快速查询CreateFastQuery
        • 更新快速查询UpdateFastQuery
        • 删除快速查询DeleteFastQuery
        • 获取快速查询列表ListFastQuery
        • 获取快速查询详情DescribeFastQuery
      • 传输任务Task相关接口
        • 创建传输任务CreateTask
        • 更新传输任务UpdateTask
      • 报警Alarm相关接口
        • 创建报警策略CreateAlarmPolicy
        • 启用报警策略EnableAlarmPolicy
        • 获取报警历史详情DescribeAlarmRecord
        • 更新报警策略UpdateAlarmPolicy
        • 删除报警策略DeleteAlarmPolicy
        • 获取报警执行列表ListAlarmExecutions
        • 获取报警策略列表ListAlarmPolicy
        • 获取报警策略详情DescribeAlarmPolicy
        • 获取报警执行统计ListAlarmExecutionStats
        • 检验报警策略执行条件ValidateAlarmCondition
        • 禁用报警策略DisableAlarmPolicy
        • 获取报警历史列表ListAlarmRecord
        • 检验报警策略查询语句ValidateAlarmPolicySQL
      • 日志投递LogShipper相关接口
        • 创建日志投递CreateLogShipper
        • 更新日志投递UpdateLogShipper
        • 删除日志投递任务DeleteSingleLogShipper
        • 批量设置日志投递任务状态BulkSetLogShipperStatus
        • 设置日志投递任务状态SetSingleLogShipperStatus
        • 获取日志投递记录ListLogShipperRecord
        • 批量删除日志投递任务BulkDeleteLogShipper
        • 获取日志投递列表ListLogShipper
        • 获取日志投递详情GetLogShipper
      • 日志集模板相关接口
        • 创建日志集模板CreateLogStoreTemplate
        • 更新日志集模板UpdateLogStoreTemplate
        • 删除日志集模板DeleteLogStoreTemplates
        • 获取日志集模板列表DescribeLogStoreTemplates
        • 获取日志集模板详情DescribeLogStoreTemplate
      • 索引Index相关接口
        • 创建索引CreateIndex
        • 更新索引UpdateIndex
        • 删除索引DeleteIndex
        • 获取索引详情DescribeIndex
      • 兼容Elasticsearch相关接口
        • 检索和分析BLS日志 AsyncSearch
        • 查询索引列表 ResolveIndex
        • 推荐字段取值 TermsEnum
        • 获取索引字段列表 FieldCaps
    • SDK参考
      • SDK隐私政策
      • SDK开发者个人信息保护合规指引
      • Android & ISO SDK下载
      • Go SDK
        • 概述
        • 初始化
        • 安装SDK工具包
        • Project操作
        • 日志集LogStore操作
        • 日志流LogStream操作
        • 日志记录LogRecord操作
        • 日志投递LogShipper操作
        • 快速查询FastQuery操作
        • 下载任务操作
        • 索引Index操作
        • 版本发布记录
      • iOS SDK
        • 概述
        • 快速开始
        • 版本发布记录
      • Java SDK
        • 概述
        • 日志记录LogRecord操作
        • 安装SDK工具包
      • Android SDK
        • 概述
        • 快速开始
        • 版本发布记录
    • 导入SLS采集配置
  • 最佳实践
    • 使用同环比作为报警触发条件
    • 通过Grafana使用BLS
    • 使用Grafana访问日志服务的Elasticsearch兼容接口
    • BLS接入Kibana
  • 常见问题
    • 常见问题总览
    • 配置类问题
    • 故障类问题
  • 日志服务等级协议SLA
  • 文档中心
  • arrow
  • 日志服务BLS
  • arrow
  • 开发指南
  • arrow
  • SDK参考
  • arrow
  • iOS SDK
  • arrow
  • 快速开始
本页目录
  • 简介
  • 环境要求
  • 安装SDK工具包
  • 安装步骤
  • SDK目录结构
  • SDK使用
  • 示例1:上传日志
  • 示例2:创建日志集

快速开始

更新时间:2025-11-14

简介

本文档主要介绍百度智能云日志服务 iOS SDK的安装和使用

本文档假设您已经开通了百度智能云日志服务

如果您还没有开通或者还不了解日志服务,请登录 日志服务产品主页 获取更多的帮助。

环境要求

  • iOS系统版本:9.0及以上
  • 必须注册有百度智能云用户账户,并开通日志服务

安装SDK工具包

安装步骤

  1. 在 百度智能云开发者中心 的 客户端 SDK 列表找到百度日志服务,下载SDK压缩包,解压得到BDLogServiceSDK.framework。
  2. 根据需要将framework复制到您的Xcode工程目录下,例如lib目录。
  3. 在Xcode右键工程->Add files to "your project",导入您刚才复制的framework。

SDK目录结构

Plain Text
1|_BDLogServiceSDK.framework                   // BLS SDK
2| |____Headers
3|   |____BDLogServiceSDK.h                    // BLS 头文件说明
4|   |____BDLogServiceConfig.h                 // BLS 配置类
5|   |____BDLogServiceClient.h                 // BLS 客户端类
6|   |____BDLogServiceClient+LogStore.h        // BLS 日志集相关接口类
7|   |____BDLogServiceClient+LogStream.h       // BLS 日志流相关接口类
8|   |____BDLogServiceClient+LogRecord.h       // BLS 读写日志相关接口类
9|   |____BDLogServiceClient+FastQuery.h       // BLS 快速查询相关接口类
10|   |____BDLogServiceClient+Index.h           // BLS 索引相关接口类
11|   |____BDLogServiceClient+LogShipper.h      // BLS 日志投递相关接口类
12|   |____LogStore.h                           // BLS 日志集 Model 类
13|   |____LogStream.h                          // BLS 日志流 Model 类
14|   |____LogRecord.h                          // BLS 日志记录 Model 类
15|   |____FastQuery.h                          // BLS 快速查询 Model 类
16|   |____LogStoreIndex.h                      // BLS 日志集索引 Model 类
17|   |____LogShipper.h                         // BLS 日志投递 Model 类
18|   |____BDLogServiceConstants.h              // BLS 常量定义
19|   |____BDCloudSigner.h                      // BLS AK、SK签名类

SDK使用

示例1:上传日志

  1. 初始化设置ak/sk,Endpoint,创建 BDLogServiceClient 对象。(可用的 Endpoint 可以在 API参考-服务域名查看)
ObjectiveC
1//初始化AK SK                 
2NSString *ak = @"<access key>";    
3NSString *sk = @"<secret key>";
4NSString *endpoint = @"<endpoint>";
5BDLogServiceConfig *config = [[BDLogServiceConfig alloc] initWithEndpoint:endpoint accessKey:ak secretKey:sk];
6BDLogServiceClient *client = [[BDLogServiceClient alloc] initWithConfig: config];
  1. 调用 pushLogRecord 接口上传日志

    日志记录的格式可以是 TEXT,也可以是 JSON 格式。如果是 TEXT,则不对日志进行解析;如果是 JSON 格式,可以自动发现 JSON 字段(仅支持首层字段发现,暂不支持嵌套类型字段的自动发现)。

    如果既想上传日志原文,又想上传解析出的具体字段,可以使用 JSON 格式进行上传,并在 JSON 中包含日志原文(使用 @raw 作为key,日志原文作为 value)。 BLS 解析到 @raw 的时候,会将其内容作为日志原文处理。

    例如:

    • TEXT 类型
    ObjectiveC
    1 LogRecord *logRecord = [[LogRecord alloc] initWithMessage: @"this is log."]
    • JSON 类型
    ObjectiveC
    1 LogRecord *logRecord = [[LogRecord alloc] initWithMessage: @"{\"level\":\"info\", \"status\": 200, \"cost\": 304.87}"]
    • JSON 类型,包括日志原文
    ObjectiveC
    1 LogRecord *logRecord = [[LogRecord alloc] initWithMessage: @"{\"@raw\":\"info 200 304.87ms this is log.\", \"level\":\"info\", \"status\": 200, \"cost\": 304.87}"]
ObjectiveC
1//配置参数,请求接口 
2NSString *logStoreName = @"<自定义名称>";
3NSString *logStreamName = @"<自定义名称>"; 
4NSInteger time = (NSInteger)([NSDate date].timeIntervalSince1970 * 1000); //日志时间戳,不能大于当前时间戳,单位毫秒
5NSString *type = @"TEXT"; //日志记录格式,支持 JSON/TEXT,默认为 TEXT,详情请参考上述日志记录格式说明,一次上传请求的日志记录都要是同一种格式
6NSArray *logRecords = @[
7    @{
8        @"message":@"<日志内容,可以是文本内容,或者 JSON 字符串,参考上述日志记录格式说明>",
9        @"timestamp":[NSNumber numberWithInteger:time]
10    },
11    @{
12        @"message": @"<日志内容,可以是文本内容,或者 JSON 字符串,参考上述日志记录格式说明>",
13        @"timestamp": [NSNumber numberWithInteger:time]
14    }
15]; //日志记录
16__weak typeof(self) weakSelf = self;  
17[client pushLogRecordWithLogStoreName:logStoreName   logStreamName:logStreamName type:type logRecords:logRecords completion:^(NSDictionary * _Nonnull resultDic, NSError * _Nonnull error) {       
18//resultDic返回服务器返回的数据结果
19    if(error){ //失败
20        NSLog(@"%@ %@", resultDic[@"message"], error);
21    } else { //成功
22        NSLog(@"推送日志记录成功");
23    }
24}];

示例2:创建日志集

  1. 初始化设置ak/sk,Endpoint,创建 BDLogServiceClient 对象。(可用的 Endpoint 可以在 API参考-服务域名查看)
ObjectiveC
1//初始化AK SK                 
2NSString *ak = @"<access key>";    
3NSString *sk = @"<secret key>";
4NSString *endpoint = @"<endpoint>";
5BDLogServiceConfig *config = [[BDLogServiceConfig alloc] initWithEndpoint:endpoint accessKey:ak secretKey:sk];
6BDLogServiceClient *client = [[BDLogServiceClient alloc] initWithConfig: config];
  1. 调用 createLogStore 接口创建日志集
ObjectiveC
1//配置参数,请求接口 
2NSString *logStoreName = @"<自定义名称>"; 
3NSString *retention =  @"10";  // 日志集的租期,单位:天数 
4__weak typeof(self) weakSelf = self;  
5[client createLogStoreWithLogStoreName:logStoreName   retention:[retention intValue] completion:^(NSDictionary * _Nonnull resultDic, NSError * _Nonnull error) {
6//resultDic返回服务器返回的数据结果
7    if(error){ //失败
8        NSLog(@"%@ %@", resultDic[@"message"], error);
9    } else { //成功
10        NSLog(@"创建LogStore成功");
11    }
12}];

其他服务接口的调用过程与示例相似。关于 SDK 使用到的 API 具体用法,可以参考:API 参考 - 概览

上一篇
概述
下一篇
版本发布记录