本文介绍使用日志服务.NET SDK的常见操作。
前提条件
已创建RAM用户并完成授权。具体操作,请参见创建RAM用户并完成授权。
已配置环境变量ALIBABA_CLOUD_ACCESS_KEY_ID和ALIBABA_CLOUD_ACCESS_KEY_SECRET。具体操作,请参见在Linux、macOS和Windows系统配置环境变量。
重要阿里云账号的AccessKey拥有所有API的访问权限,建议您使用RAM用户的AccessKey进行API访问或日常运维。
强烈建议不要把AccessKey ID和AccessKey Secret保存到工程代码里,否则可能导致AccessKey泄露,威胁您账号下所有资源的安全。
已安装.NET SDK。具体操作,请参见安装.NET SDK。
示例代码
创建日志服务Client
LogClient是日志服务的C#客户端,用于管理Project、Logstore等日志服务资源。使用.Net SDK发起日志服务请求,您需要初始化一个Client实例。
// 日志服务的服务接入点。此处以杭州为例,其它地域请根据实际情况填写。 String endpoint = "cn-hangzhou.log.aliyuncs.com", // 本示例从环境变量中获取AccessKey ID和AccessKey Secret。 String accesskeyId = Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_ID"), String accessKey = Environment.GetEnvironmentVariable("ALIBABA_CLOUD_ACCESS_KEY_SECRET"), LogClient client = new LogClient(endpoint, accesskeyId, accessKey);
写入日志
日志服务.NET SDK提供丰富的示例程序,方便参考或直接使用。此处以写入日志为例进行说明,示例代码如下所示:
PutLogsRequest putLogsReqError = new PutLogsRequest(); putLogsReqError.Project = my-project; // Project名称。 putLogsReqError.Topic = "topic"; // 日志主题。 putLogsReqError.Logstore = my-logstore; // Logstore名称。 putLogsReqError.LogItems = new List<LogItem>(); for (int i = 1; i <= 10; ++i) { LogItem logItem = new LogItem(); logItem.Time = DateUtils.TimeSpan(); for (int k = 0; k < 10; ++k) logItem.PushBack("error_" + i.ToString(), "invalid operation"); putLogsReqError.LogItems.Add(logItem); } PutLogsResponse putLogRespError = client.PutLogs(putLogsReqError); Thread.Sleep(5000);
更多信息,请参见aliyun-log-csharp-sdk。
采集Unity3D日志
通过Web Tracking方式,以采集Unity Debug.Log为例,介绍Unity3D日志的采集方法。更多信息,请参见采集Unity3D日志。
相关文档
在调用API接口过程中,若服务端返回结果中包含错误信息,则表示调用API接口失败。您可以参考API错误码对照表查找对应的解决方法。更多信息,请参见API错误处理对照表。
阿里云OpenAPI开发者门户提供调试、SDK、示例和配套文档。通过OpenAPI,您无需手动封装请求和签名操作,就可以快速对日志服务API进行调试。更多信息,请参见OpenAPI开发者门户。
为满足越来越多的自动化日志服务配置需求,日志服务提供命令行工具CLI(Command Line Interface)。更多信息,请参见日志服务命令行工具CLI。