IOS Rest Logger
简介
这是一个用于记录从您的应用程序中的REST调用结果非常简单的库;它记录的所有内容有
- 您的REST请求URL中的路径部分
- HTTP响应代码
- 时间戳
- 设备类型(即操作系统版本和型号)
这意味着它不涉及可能被用来识别用户的任何信息,因此应该很容易与GDPR等隐私法规兼容。
配置
在iOS中
记录将被记录到AWS S3桶中,该桶由AWS COGNITO授权匿名访问。您需要提供以下信息,作为您应用程序.plist
文件中的键
AWS_REGION
:(您的S3桶的AWS区域)AWS_BUCKET_NAME
:(桶的名称)AWS_POOL_ID
:AWS COGNITO 身份池的ID
在AWS上
身份池应该配置为它的未认证角色具有未授权访问S3和写入您存储桶的权限。例如:
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Allow",
"Action": [
"mobileanalytics:PutEvents",
"cognito-sync:*"
],
"Resource": [
"*"
]
},
{
"Effect": "Allow",
"Action": [
"s3:PutObject",
"s3:GetObject",
"s3:ListBucket",
"s3:DeleteObject",
"s3:GetBucketLocation"
],
"Resource": [
"arn:aws:s3:::<your bucket>",
"arn:aws:s3:::<your bucket>/*"
]
}
]
}
有关更多详细信息,请参阅AWS文档。
API
API 极度简单,由一个包含两个静态方法的类 RESTLogger
组成。
RESTLogger.Initialise()
初始化服务RESTLogger.Log(path: String, httpResponse: Int)
记录给定路径的消息接收到给定响应代码(自动填写时间戳和平台版本)。
例如:
RESTLogger.Initialise()
RESTLogger.Log(path: "the/house/that/jack/built", httpResponse: 408)