SDK参考概述

开发人员可以使用.NET、.NET Core、Java、Python、PHP、Node.js、C、Go、iOS、Android、C++等语言的SDK采集、查询和分析日志等。

使用前须知

不同语言的日志服务SDK具体实现细节会有所不同,但是它们都是日志服务API在不同语言上的封装,实现的功能也基本一致。具体包括如下几个方面:

  • 实现对日志服务API接口的统一封装 ,让您不需要关心具体的API请求构建和响应解析。而且各个不同语言的接口使用也非常接近,方便您在不同语言间切换。更多信息,请参见接口规范

  • 实现日志服务API的数字签名逻辑,让您不需要关心API的签名逻辑细节,降低使用日志服务API的难度。更多信息,请参见请求签名

  • 实现日志服务日志的ProtoBuffer格式封装,让您在写入日志时不需要关心ProtoBuffer格式的具体细节。更多信息,请参见ProtoBuffer格式

  • 实现日志服务API中定义的压缩方法,让您不用关心压缩实现的细节。部分语言的SDK支持启用压缩模式写入日志(默认为使用压缩方式)。

  • 提供统一的错误处理机制,让您可以使用语言所熟悉的方式处理请求异常。更多信息,请参见错误处理机制

  • 目前所有语言实现的SDK仅提供同步请求方式。

SDK列表

下表列举了日志服务不同语言的SDK的参考文档和GitHub源码。

说明

日志服务对基础资源(例如Project个数、Logstore个数、Shard个数、LogItem大小)设定了合理的限制。建议您在使用前阅读使用限制文档,了解基础资源的使用限制。更多信息,请参见基础资源使用限制

使用SDK采集日志到日志服务后,您还需要为日志配置合适的索引,之后您就可以进行日志查询和分析、数据加工等操作。更多信息,请参见创建索引查询和分析日志

SDK语言

参考文档

GitHub源码

Java

Java SDK概述

Log Service Java SDKJava Producer Library

.NET Core

.NET Core SDK概述

Log Service .NET Core SDK

.NET

.NET SDK概述

Log Service .NET SDK

PHP

PHP SDK概述

Log Service PHP SDK

Python

Python SDK概述

Log Service Python SDK

Node.js

Node.js SDK概述

Log Service Node.js SDK

C

C SDK

Log Service C SDK

GO

Go SDK概述

Log Service Go SDK

iOS

iOS SDK概述

Log Service iOS SDKObjective-C SDK

Android

Android SDK概述

Log Service Android SDK

C++

C++ SDK概述

Log Service C++ SDK

调用示例

具体调用示例参考Python SDK调用日志服务ListProject接口查询Project信息

常见问题

日志服务SDK都支持哪些功能?

日志服务SDK已经实现日志服务大部分功能,包括日志采集、创建索引、查询和分析、数据加工、日志消费、日志投递管理、告警、定时SQL等。若您在SDK调试中发现未实现功能,建议您升级到最新版本SDK重试或关注后续SDK版本更新。

使用日志服务SDK的基本流程是什么?

日志服务SDK提供全流程的日志管理,其使用流程和控制台使用流程基本相似。其使用基本流程大致如下:

  1. 开通日志服务。

  2. 获取访问密钥。

  3. 创建项目Project和日志库Logstore。

  4. 日志采集并存储至Logstore。

  5. 为日志创建索引。

  6. 查询和分析日志,可视化展示。

  7. 对日志数据进行加工、投递和告警等操作。

日志服务提供界面化操作控制台,操作更简单。更多信息,请参考日志服务快速入门

SDK调试常见报错如何处理?

日志服务SDK提供错误处理逻辑。SDK可能出现的异常错误可以分成如下几类:

  • 由日志服务端返回的错误。这类错误由日志服务端返回并由SDK处理。关于这类错误的详细信息可以参见具体的API接口说明、API错误码。关于错误码的更多信息,请参见错误码

  • 由SDK在向服务端发出请求时出现的网络错误。这类错误包括网络连接不通,服务端返回超时等。

  • 由SDK自身产生的、与平台及语言相关的错误,如内存溢出等。

更多信息,请参见错误处理

在使用日志服务SDK过程中,您可能遇到日志采集、索引、查询和分析、加工等各类报错,您可以参考日志服务常见问题进行处理。更多信息,请参见常见问题

使用日志服务SDK是否存在限制?

日志服务对基础资源(例如Project个数、Logstore个数、Shard个数、LogItem大小)设定了合理的限制。建议您在使用前阅读使用限制文档,了解基础资源的使用限制。更多信息,请参见基础资源使用限制

使用SDK采集日志到日志服务后,您还需要为日志配置合适的索引,之后您就可以进行日志查询和分析、数据加工等操作。更多信息,请参见创建索引查询和分析日志

是否有使用SDK的代码示例文档?

相关文档

日志服务SDK调试平台

阿里云OpenAPI开发者门户提供调试、SDK、示例和配套文档。通过OpenAPI,您无需手动封装请求和签名操作,就可以快速对日志服务API进行调试。更多信息,请参见OpenAPI开发者门户

命令行工具CLI

为满足越来越多的自动化日志服务配置需求,日志服务提供命令行工具CLI。更多信息,请参见命令行工具CLI

费用说明

使用SDK、OpenAPI开发者门户和日志服务CLI产生的费用和使用控制台产生的费用一致。更多信息,请参见计费概述