云服务器内容精选
-
功能说明 调用设置桶日志管理配置接口,您可以为指定桶打开桶日志功能,并配置日志存放的目标桶。创建桶时,默认是不生成桶的日志的,调用C SDK的设置桶日志管理配置接口时,接口会自动为您打开桶日志配置。桶日志功能开启后,桶的每次操作将会产生一条日志,并将多条日志打包成一个日志文件。日志文件存放位置需要在开启桶日志功能时指定,可以存放到开启日志功能的桶中,也可以存放到其他您有权限的桶中,但需要和开启日志功能的桶在同一个region中。您还可以根据需要配置日志文件的访问权限,以及日志文件的文件名前缀。
-
方法定义 void set_bucket_logging_configuration_obs(const obs_options *options, char *target_bucket, char *target_prefix, char *agency, obs_acl_group *acl_group, obs_response_handler *handler, void *callback_data);
-
接口约束 由于日志文件是OBS产生,并且由OBS上传到存放日志的桶中,因此OBS需要获得委托授权,用于上传生成的日志文件,所以在配置桶日志管理前,需要先到 统一身份认证 服务生成一个对OBS服务的委托,委托配置权限只需设置目标桶的上传对象权限。如何创建委托请参考创建云服务委托。 您必须是桶拥有者或拥有设置桶日志管理配置的权限,才能设置桶日志管理配置。建议使用 IAM 或桶策略进行授权,如果使用IAM则需授予obs:bucket:PutBucketLogging权限,如果使用桶策略则需授予PutBucketLogging权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、自定义创建桶策略。 OBS支持的Region与Endpoint的对应关系,详细信息请参见地区与终端节点。
-
返回结果 表2 返回结果 参数类型 描述 表3 说明: 该接口返回是一个Promise类型,需要使用Promise、async/await语法处理。 参数解释: 接口返回信息,详见表3。 表3 Response 参数名称 参数类型 描述 CommonMsg ICommonMsg 参数解释: 接口调用完成后的公共信息,包含HTTP状态码,操作失败的错误码等,详见ICommonMsg。 InterfaceResult 表5 参数解释: 操作成功后的结果数据,详见表5。 约束限制: 当Status大于300时为空。 表4 ICommonMsg 参数名称 参数类型 描述 Status number 参数解释: OBS服务端返回的HTTP状态码。 取值范围: 状态码是一组从2xx(成功)到4xx或5xx(错误)的数字代码,状态码表示了请求响应的状态。完整的状态码列表请参见状态码。 Code string 参数解释: OBS服务端返回的错误码。 Message string 参数解释: OBS服务端返回的错误描述。 HostId string 参数解释: OBS服务端返回的请求服务端ID。 RequestId string 参数解释: OBS服务端返回的请求ID。 Id2 string 参数解释: OBS服务端返回的请求ID2。 Indicator string 参数解释: OBS服务端返回的详细错误码。 表5 GetBucketLoggingOutput 参数名称 参数类型 描述 RequestId string 参数解释: OBS服务端返回的请求ID。 Agency string 参数解释: 目标桶(存放日志文件的桶)的所有者通过统一身份认证服务(IAM)创建对OBS云服务委托的名称。 可以选择账号下已有的IAM委托,也可以创建一个新的委托。创建委托参见创建IAM委托。 LoggingEnabled LoggingEnabled 参数解释: 日志配置信息。 表6 LoggingEnabled 参数名称 参数类型 描述 TargetBucket string 参数解释: 日志存储桶的桶名,该桶用于存放日志文件。 TargetPrefix string 参数解释: 日志文件对象的对象名前缀,设置后日志文件对象将携带统一前缀存储在日志存储桶中。 TargetGrants Grant 参数解释: 被授权用户的权限信息列表,定义哪些用户可以针对日志文件进行哪些访问操作,详见Grant。 表7 Grant 参数名称 参数类型 是否必选 描述 Grantee Grantee 作为请求参数时必选 参数解释: 被授权用户相关信息,详见Grantee。 Permission PermissionType 作为请求参数时必选 参数解释: 被授予的权限,详见PermissionType。 表8 Grantee 参数名称 参数类型 是否必选 描述 Type GranteeType 作为请求参数时必选 参数解释: 被授权用户的类型,详见GranteeType。 ID string 作为请求参数时,如果Type为用户类型则必选。 参数解释: 被授权用户的账号ID,即domain_id。 Name string 作为请求参数时可选 参数解释: 被授权用户的账号名。 URI GroupUriType 作为请求参数时,如果Type为用户组类型则必选。 参数解释: 被授权的用户组,详见GroupUriType。 表9 GranteeType 常量名 原始值 说明 GranteeGroup Group 授权给用户组。 GranteeUser CanonicalUser 授权给单个用户。 表10 GroupUriType 常量名 原始值 说明 GroupAllUsers AllUsers 所有用户。 GroupAuthenticatedUsers AuthenticatedUsers 授权用户,已废弃。 GroupLogDelivery LogDelivery 日志投递组,已废弃。 表11 PermissionType 常量名 原始值 说明 ObsClient.enums.PermissionRead READ 如果有桶的读权限,则可以获取该桶内对象列表、桶内多段任务、桶的元数据、桶的多版本。 如果有对象的读权限,则可以获取该对象内容和元数据。 ObsClient.enums.PermissionWrite WRITE 如果有桶的写权限,则可以上传、覆盖和删除该桶内任何对象和段。 此权限在对象上不适用。 ObsClient.enums.PermissionReadAcp READ_ACP 如果有读ACP的权限,则可以获取对应的桶或对象的权限控制列表(ACL)。 桶或对象的所有者永远拥有读对应桶或对象ACP的权限。 ObsClient.enums.PermissionWriteAcp WRITE_ACP 如果有写ACP的权限,则可以更新对应桶或对象的权限控制列表(ACL)。 桶或对象的所有者永远拥有写对应桶或对象的ACP的权限。 拥有了写ACP的权限,由于可以更改权限控制策略,实际上意味着拥有了完全访问的权限。 ObsClient.enums.PermissionFullControl FULL_CONTROL 如果有桶的完全控制权限意味着拥有PermissionRead、PermissionWrite、PermissionReadAcp和PermissionWriteAcp的权限。 如果有对象的完全控制权限意味着拥有PermissionRead、PermissionReadAcp和PermissionWriteAcp的权限。
-
接口约束 您必须是桶拥有者或拥有获取桶日志管理配置的权限,才能获取桶日志管理配置。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:bucket:GetBucketLogging权限,如果使用桶策略则需授予GetBucketLogging权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、自定义创建桶策略。 OBS支持的Region与Endpoint的对应关系,详细信息请参见地区与终端节点。
-
请求参数 表1 BucketRequestInput 参数名称 参数类型 是否必选 描述 Bucket string 必选 参数解释: 桶名。 约束限制: 桶的名字需全局唯一,不能与已有的任何桶名称重复,包括其他用户创建的桶。 桶命名规则如下: 3~63个字符,数字或字母开头,支持小写字母、数字、“-”、“.”。 禁止使用IP地址。 禁止以“-”或“.”开头及结尾。 禁止两个“.”相邻(如:“my..bucket”)。 禁止“.”和“-”相邻(如:“my-.bucket”和“my.-bucket”)。 同一用户在同一个区域多次创建同名桶不会报错,创建的桶属性以第一次请求为准。 取值范围: 长度为3~63个字符。 默认取值: 无
-
请求参数说明 表1 请求参数列表 参数名称 参数类型 是否必选 描述 request BaseBucketRequest 必选 参数解释: 查看桶日志配置请求参数,详见BaseBucketRequest。 表2 BaseBucketRequest 参数名称 参数类型 是否必选 描述 bucketName String 必选 参数解释: 桶名。 约束限制: 桶的名字需全局唯一,不能与已有的任何桶名称重复,包括其他用户创建的桶。 桶命名规则如下: 3~63个字符,数字或字母开头,支持小写字母、数字、“-”、“.”。 禁止使用IP地址。 禁止以“-”或“.”开头及结尾。 禁止两个“.”相邻(如:“my..bucket”)。 禁止“.”和“-”相邻(如:“my-.bucket”和“my.-bucket”)。 同一用户在同一个区域多次创建同名桶不会报错,创建的桶属性以第一次请求为准。 默认取值: 无
-
代码示例 本示例用于获取examplebucket桶的日志管理配置。 1 2 3 4 5 6 7 8 9101112131415161718192021222324252627282930313233343536373839404142434445464748 import com.obs.services.ObsClient;import com.obs.services.exception.ObsException;import com.obs.services.model.BucketLoggingConfiguration;public class GetBucketLogging001 { public static void main(String[] args) { // 您可以通过环境变量获取访问密钥AK/SK,也可以使用其他外部引入方式传入。如果使用硬编码可能会存在泄露风险。 // 您可以登录访问管理控制台获取访问密钥AK/SK String ak = System.getenv("AC CES S_KEY_ID"); String sk = System.getenv("SECRET_ACCESS_KEY_ID"); // 【可选】如果使用临时AK/SK和SecurityToken访问OBS,同样建议您尽量避免使用硬编码,以降低信息泄露风险。 // 您可以通过环境变量获取访问密钥AK/SK/SecurityToken,也可以使用其他外部引入方式传入。 // String securityToken = System.getenv("SECURITY_TOKEN"); // endpoint填写桶所在的endpoint, 此处以华北-北京四为例,其他地区请按实际情况填写。 String endPoint = "https://obs.cn-north-4.myhuaweicloud.com"; // 您可以通过环境变量获取endPoint,也可以使用其他外部引入方式传入。 //String endPoint = System.getenv("ENDPOINT"); // 创建ObsClient实例 // 使用永久AK/SK初始化客户端 ObsClient obsClient = new ObsClient(ak, sk,endPoint); // 使用临时AK/SK和SecurityToken初始化客户端 // ObsClient obsClient = new ObsClient(ak, sk, securityToken, endPoint); try { // 查看桶日志配置 BucketLoggingConfiguration config = obsClient.getBucketLogging("examplebucket"); System.out.println("TargetBucketName:" + config.getTargetBucketName()); System.out.println("LogfilePrefix:" + config.getLogfilePrefix()); System.out.println("getBucketLogging successfully"); } catch (ObsException e) { System.out.println("getBucketLogging failed"); // 请求失败,打印http状态码 System.out.println("HTTP Code:" + e.getResponseCode()); // 请求失败,打印服务端错误码 System.out.println("Error Code:" + e.getErrorCode()); // 请求失败,打印详细错误信息 System.out.println("Error Message:" + e.getErrorMessage()); // 请求失败,打印请求id System.out.println("Request ID:" + e.getErrorRequestId()); System.out.println("Host ID:" + e.getErrorHostId()); e.printStackTrace(); } catch (Exception e) { System.out.println("getBucketLogging failed"); // 其他异常信息打印 e.printStackTrace(); } }}
-
接口约束 您必须是桶拥有者或拥有获取桶日志管理配置的权限,才能获取桶日志管理配置。建议使用IAM或桶策略进行授权,如果使用IAM则需授予obs:bucket:GetBucketLogging权限,如果使用桶策略则需授予GetBucketLogging权限。相关授权方式介绍可参见OBS权限控制概述,配置方式详见使用IAM自定义策略、自定义创建桶策略。 OBS支持的region以及region与endPoint的对应关系,详细信息请参见地区与终端节点。
-
用户需要做运维协助操作吗? 需要。 如果按照如何检查后端服务器网络状态?到如何检查通过EIP访问后端云服务器?章节,自查指导的操作进行确认后,弹性负载均衡器依然无法通信,则需联系客服解决。 用户需向技术支持人员提供如下表格中的信息: 项目信息 您的值 负载均衡器的ID - 虚拟私有云的ID - 负载均衡的服务地址 - 监听器的ID - 负载均衡器协议/端口 - 健康检查方式(协议/端口) - 健康检查状态 - 云服务器1的ID - 云服务器2的ID - 父主题: 访问日志
-
查看桶日志配置 开发过程中,您有任何问题可以在github上提交issue,或者在华为云 对象存储服务 论坛中发帖求助。接口参考文档详细介绍了每个接口的参数和使用方法。 您可以通过ObsClient.getBucketLogging查看桶日志配置。以下代码展示了如何查看桶日志配置: // 认证用的ak和sk硬编码到代码中或者明文存储都有很大的安全风险,建议在配置文件或者环境变量中密文存放,使用时解密,确保安全;本示例以ak和sk保存在环境变量中为例,运行本示例前请先在本地环境中设置环境变量ACCESS_KEY_ID和SECRET_ACCESS_KEY_ID。// 您可以登录访问管理控制台获取访问密钥AK/SK,获取方式请参见https://support.huaweicloud.com/usermanual-ca/ca_01_0003.htmlString ak = System.getenv("ACCESS_KEY_ID");String sk = System.getenv("SECRET_ACCESS_KEY_ID");String endPoint = "https://your-endpoint";// 创建ObsClient实例ObsClient obsClient = new ObsClient(ak, sk, endPoint);BucketLoggingConfiguration config = obsClient.getBucketLogging("bucketname");Log.i("GetBucketLoggingConfiguration","\t" + config.getTargetBucketName());Log.i("GetBucketLoggingConfiguration","\t" + config.getLogfilePrefix()); 父主题: 设置访问日志
更多精彩内容
CDN加速
GaussDB
文字转换成语音
免费的服务器
如何创建网站
域名网站购买
私有云桌面
云主机哪个好
域名怎么备案
手机云电脑
SSL证书申请
云点播服务器
免费OCR是什么
电脑云桌面
域名备案怎么弄
语音转文字
文字图片识别
云桌面是什么
网址安全检测
网站建设搭建
国外CDN加速
SSL免费证书申请
短信批量发送
图片OCR识别
云数据库MySQL
个人域名购买
录音转文字
扫描图片识别文字
OCR图片识别
行驶证识别
虚拟电话号码
电话呼叫中心软件
怎么制作一个网站
Email注册网站
华为VNC
图像文字识别
企业网站制作
个人网站搭建
华为云计算
免费租用云托管
云桌面云服务器
ocr文字识别免费版
HTTPS证书申请
图片文字识别转换
国外域名注册商
使用免费虚拟主机
云电脑主机多少钱
鲲鹏云手机
短信验证码平台
OCR图片文字识别
SSL证书是什么
申请企业邮箱步骤
免费的企业用邮箱
云免流搭建教程
域名价格