开发人员可以使用.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 SDK、Log Service SDK for Java 0.6.0 API、Java 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、User Guide |
Node.js | Node.js SDK概述 | Log Service Node.js SDK |
C | C SDK | Log Service C SDK、C Producer Library |
GO | Go SDK概述 | Log Service Go SDK |
iOS | iOS SDK概述 | Log Service iOS SDK、Objective-C SDK |
Android | Android SDK概述 | Log Service Android SDK |
C++ | C++ SDK概述 | Log Service C++ SDK |