-
【功能模块】测试obs存储桶文件上传报错,之前是可以用的,今天就可以报错了租户:Hi-hstc123【操作步骤&问题现象】1、2、【截图信息】【日志信息】(可选,上传日志内容或者附件)
-
OBS存储的图片,需要临时签名和过期时间,如果这样,那么一次性上千张图,岂不是每一个图都要生成临时url了吗??而且加入到了过期时间了 那岂不是又要请求云服务再次为每一个图生成url??
-
obs java sdk 之前上传有效期为1天,现在想修改已上传的文件为永久有效? 可以吗?
-
【问题来源】 星网 【问题简要】OBS自动外呼开发字段相关问题【问题类别】 OBS【AICC解决方案版本】 AICC8.15【期望解决时间】尽快【问题现象描述】obs自动外呼数据库接口,取外呼任务接口,其中TRANSFERWITHDETECTTYPE和AsrFlag这两个参数有什么用?会触发什么效果?如果可以,请举例说明一下。
-
请问obs查询对象列表支持按创建时间倒序查询吗?
-
描述CenterNet-Hourglass (物体检测/Pytorch)1. 概述此模型是对Objects as Points 中提出的CenterNet进行结果复现(原论文Table 2 最后一行)。本模型是以Hourglass网络架构作为backbone,以ExtremNet 作为预训练模型,在COCO数据集上进行50epochs的训练后得到的。本项目是基于原论文的官方代码进行针对ModelArts平台的修改来实现ModelArts上的训练与部署。目标检测的主要benchmark 为COCO数据集,相关指标为mAP,详细说明请参考:https://cocodataset.org本模型的其他信息如下表所示:项目说明参考论文Objects as Points使用框架Pytorch-1.4.0训练模型BackboneHourglass训练集COCO train2017训练总epoch数50训练batch_size160 (20*8, 每卡20 batch size)训练硬件及耗时8 * v100,24小时测试集COCO val2017 & test2017推理硬件及速度CPU,20s/pic训练输入图像尺寸训练输入 3x512x512推理输入推理输入图像尺寸支持任意尺寸,推荐大于512x512的图片输入原论文准确率mAP=42.1, 使用flip test本算法准确率mAP=42.7, 使用flip test2. 训练2.1. 算法基本信息任务类型:目标检测支持的框架引擎:PyTorch-1.4.0-python3.6算法输入:存储在OBS上的数据集,必须按照COCO数据集的格式进行存储|-- data `-- |-- coco `-- |-- annotations | |-- instances_train2017.json | |-- instances_val2017.json | |-- person_keypoints_train2017.json | |-- person_keypoints_val2017.json | |-- image_info_test-dev2017.json |---|-- train2017 |---|-- val2017 `---|-- test2017将数据打包tar -cvf coco.tar ./coco将 coco.tar 上传至OBS。预训练模型ExtremeNet算法输出:用于Pytorch推理的pth模型,CPU推理速度:20s/pic代码结构src/ ├── pre-trained_weights │ └── ExtremeNet_500000.pth ├── trained_model # for deployment │ ├── coco_classes.py │ ├── config.json │ ├── customize_service.py │ ├── epoch_50_mAP_42.7.pth │ ├── _init_paths.py │ └── lib ├── train.py # training script ├── evaluation.py # evaluation script ├── _init_paths.py ├── coco_eval.py ├── lib # related codebase │ ├── datasets ... │ ├── detectors ... │ ├── external ... │ ├── logger.py │ ├── models ... │ ├── opts.py │ ├── trains ... │ └── utils ... ├── coco # coco dir ├── infer_results # inference results COCO test-dev submit format │ ├── detections_test-dev2017_ctdet-flip-test_results.zip │ └── detections_test-dev2017_ctdet-multi-scale_results.zip └── training_logs # training logs ├── jobf9a05f30-job-trainjob-ctdet.0-0-0-det-0_default-stdout.log ├── logs_2020-11-12-22-19 ... └── opt.txt2.2. 训练参数说明名称默认值类型是否必填是否可修改描述batch_size12int否是模型训练时总的batch_size,当多卡训练时,batch_size要能整除#GPUmaster_batch12int否是模型训练时负责维护模型master copy的GPU上的batch_size,如无特殊需求可设置master_batch = batch_size / #GPUload_weightsrc/trained_model/epoch_50_mAP_42.7.pthstring是是预训练的CenterNet模型的pth文件路径gpus0string否是GPU 编号,如果选择多卡,则需要按照“0,1,2,3”的格式填写num_epoch50int否是训练所需的epoch数量lr2.5e-4float否是训练时的learning ratelr_step40string否是learning rate 在指定epoch时变为原来的0.1evalFalsestring否是是否启动Evaluation模式,具体使用见2.4节推荐运行参数:--exp_id=coco_hg --arch=hourglass --batch_size=160 --master_batch=20 --lr=2.5e-4 --load_model=[path]/ExtremeNet_500000.pth --gpus=0,1,2,3,4,5,6,7 --num_epoch=50 --lr_step=40特别说明:load_weight参数有以下两种取值:固定的默认路径,默认加载本算法源码目录中的trained_model/epoch_50_mAP_42.7.pth继续训练,加载成功会打印日志;可变的OBS路径,用户可指定OBS上的一个模型文件路径,然后本算法会加载该模型继续训练,加载成功会打印日志。注意,OBS路径的模型在输入时load_weight应为s3://bucket_name/xxx/xxx.ptheval参数有以下两种取值:(1)False,本算法执行模型训练过程;(2)True,本算法加载load_weight参数指定的模型,然后执行模型评估过程。具体评估见2.4节。2.3. 训练输出文件CenterNet_output/V0008/ ├── logs_2020-11-12-22-19 │ ├── events.out.tfevents.1605190788.job3b595134-job-trainjob-centernet-0 │ ├── log.txt │ └── opt.txt ├── checkpoints | ├── model_40.pth | ├── model_best.pth | └── epoch_50_mAP_42.7.pth ├── model | ├── customize_service.py | ├── config.json | ├── model_last.pth | └── ... └── opt.txttfevents 文件可由tensorboard打开查看训练曲线。2.4. 模型评估可利用train.py 或 evaluation.py 参数对模型进行指标验证,此时需将原始默认参数删除,并配置以下相关参数:名称默认值类型描述load_weightsrc/trained_model/epoch_50_mAP_42.7.pthstring需要指定训练得到的pth 文件的路径gpus0stringGPU 编号,如果选择多卡,则需要按照“0,1,2,3”的格式填写keep_resFalsestringflag 参数,用来判断是否要保留原始分辨率进行推理flip_testFalsestringdetection中是否使用反转测试,以提高精度test_scales‘’string多尺度模型推断,可以有更高的精度,但也相对更加耗时。多尺度参数输入示例:0.5,0.75,1,1.25,1.5trainvalFalsestring用于选择所用的推理数据集,默认为val集,若设True则为test集。evalTruestring若使用train.py 脚本,需将其设置为True才可进行模型评估,否者进行模型训练推荐运行参数:--exp_id coco_hg --arch hourglass --keep_res True --resume True --gpus 0 --load_model [path to ckpt]/model_last.pth --flip_test True # optional --test_scales 0.5,0.75,1,1.25,1.5 # optional --trainval True # optional输出文件:CenterNet_output_val/V0008/ ├── logs_2020-11-12-22-19 ├── results.json ├── map.txt # 如果以coco形式存储数据 └── opt.txtresults.json为COCO的评价格式的推理输出。Evaluation 数据data_url格式目前支持三种形式:coco.tar 文件所在dir。此时推理数据文件结构与2.1一致coco 文件夹。将测试数据以coco2017的格式存放在obs里,格式必须严格如下:|-- data `-- |-- coco `-- |-- annotations | |-- instances_val2017.json `---|-- val2017当数据为coco原始数据时,无需做任何改变,在任务配置时,将data_url指向此处的data文件夹即可。当数据为自定义数据时,用户需要手动按照coco数据的格式将图片放在data/coco/val2017的路径里,并将groundtruth的信息在data/coco/annotations/instances_val2017.json文件中进行改写(不能修改json文件名),之后将data_url指向此处的data文件夹即可。图片文件夹。此时data路径下直接存放待推理的图片。将data_url指向此处的data文件夹即可,此时不会生成评估指标。图片推理结果的格式: 以coco推理结果的形式保存在results.json文件中。3. GPU/CPU推理完成训练后,在创建模型的选项中选择,“从训练中选择”的方式实现实现模型导入即可。之后选择立即创建即可得到可部署模型。可部署模型也已经发布在ModelHub注意:推理配置文件model/config.json中的runtime字段为pytorch1.4-python3.7,表示该模型可同时在CPU或GPU运行。4. 案例指导本算法的详细使用方法,请查看《ModelArts AI Gallery算法CenterNet使用指导》。交付交付方式华为云ModelArts交付区域华北-北京一、华北-北京四、华东-上海一、华南-广州、亚太-**
-
描述TSD(目标检测/Pytorch)1. 概述此模型基于Revisiting the Sibling Head in Object Detector中提出的模型结构实现,该算法会载入在COCO上的预训练模型,在用户数据集上做迁移学习。我们提供了训练代码和可用于训练的模型,用于实际场景的微调训练。训练后生成的模型可直接在ModelArts平台部署成在线服务。目标检测的评估手段一般使用AP指标,详细说明请参考原论文。本算法的其他信息如下表所示:项目说明参考论文Revisiting the Sibling Head in Object Detector使用框架Pytorch-1.4.0训练集COCO2017中的训练集训练总epoch数35训练batch_size使用8张V100训练,每张卡TRAIN_BATCH_SIZE = 2,相当于总batch_size为16训练硬件及耗时8*V100,约100小时测试集COCO2017中的test_dev推理硬件及速度V100,1.9s/pic原论文准确率AP=49.4本算法准确率AP=49.42. 训练2.1. 算法基本信息任务类型:目标检测支持的框架引擎:PyTorch-1.4.0-python3.6算法输入:存储在OBS上的数据集,必须按照COCO数据集的格式进行存储,详情请查看下文第4节案例指导COCO预训练模型,在COCO test_dev上的AP是49.4算法输出:用于Pytorch推理的pth模型代码结构|-src # 算法源码根目录 |-pre-trained_weights # ImageNet上的预训练参数文件 |-trained_model # 已训练好的、可复现论文精度的模型 |-model |-config.json |-customize_service.py |-epoch_35_mAP_49.4_tsd1.pth # 训练好的模型 |-... |-train.py # 算法启动文件 |-evaluation.py # 模型评估脚本 |-...2.2. 训练参数说明名称默认值类型是否必填是否可修改描述gpu_num1int否是使用GPU的数目,默认是1块GPUimgs_per_gpu2int否是每块GPU能同时处理的图像数目lr0.02float否是训练的学习率epoch1int否是训练多少代lr_step24,33str否是在训练至多少代时进行进行学习率衰减deterministic1int否是算法是否是确定性的,即是否设定种子validate1int否是训练时是否进行在验证集上检验multi_train1int否是在训练时是否采用多尺度图像增强multi_test0int否是在验证和测试时是否采用多尺度图像增强test_ann_fileannotations/image_info_test-dev2017.jsonstr否是测试时采用的图像标注json文件。支持输入本算法源码目录的相对路径;也支持输入可变的OBS路径,用户可指定OBS上的一个模型文件路径。test_img_prefixtest2017str否是测试时图像所在的文件夹目录format_only0int否是是否只输出预测结果文件,不输出准确率等指标。当测试没有ground truth时,必须把format_only设为1load_weight—str否是是否加载已训练好的模型权重eval0int否是是否进行测试。1表示测试;0表示训练具体介绍一下load_weight参数:默认情况:默认加载已训练好的模型,即源码目录中的trained_model/model/ epoch_35_mAP_49.4_tsd1.pth,加载成功会打印日志。格式规范:支持输入本算法源码目录的相对路径;也支持输入可变的OBS路径,用户可指定OBS上的一个模型文件路径。使用方法:在训练阶段,可以加载ImageNet预训练Resnet101权重来train from scratch(需要把load_weight参数删除掉),也可以指定加载的模型路径,在此基础上继续训练;若为eval阶段,参数为空时默认加载本算法训练好的weight,不为空时加载用户指定weight进行测试。其他说明:算法加载模型成功后会打印日志。2.3. 训练输出文件训练完成后的输出文件如下:|- model |- model.pth # 训练好的模型文件 |- config.json |- customize_service.py |- ... # 部署所需的其他文件 |- xxxx.log |- xxxx.log.json如果设置eval为True,输出文件如下:|- test_res |- test_result.pkl # 预测结果的.pkl文件 |- tsd_test_results.bbox.json # 预测结果的.json文件3. GPU/CPU推理元模型来源 选择 从训练中选择,选择训练作业及版本。注意:推理配置文件model/config.json中的runtime字段为pytorch1.4-python3.6,表示该模型可同时在CPU或GPU运行。4. 案例指导本算法的详细使用方法,请查看《ModelArts AI Gallery算法TSD使用指导》。交付交付方式华为云ModelArts交付区域华北-北京一、华北-北京四、华东-上海一、华南-广州、亚太-**
-
描述ECS-50 声音分类数据集1.数据简介ESC-50数据集是2000个环境录音的标签集合,适合环境声音分类的基准方法。数据集由5秒长的记录组成,分为50个语义类(每个类有40个示例)分为5个大类别2.适用的算法声音分类:https://marketplace.huaweicloud.com/markets/aihub/modelhub/detail/?id=6889bd98-b49d-4953-8c2f-15b6b9320a403.使用方法a、下载本数据集至您的OBS桶中b、在ModelArts“数据管理-数据集”创建声音分类数据集(注意:数据集输入位置、数据集输出位置选择2个空的OBS路径)c、在数据集详细页面右上角“导入”,导入方式选择“对象存储服务(OBS)目录”,目录位置选择上述下载路径d、待导入完成后,单击页面右上角“发布”e、订阅声音分类算法,选择上述发布的声音分类数据集进行训练
-
描述中文语句情感分类(manifest)1.数据简介数据集分为训练语料,验证语料,来区分语句情感2.适用的算法中文文本分类-Bert:https://marketplace.huaweicloud.com/markets/aihub/modelhub/detail/?id=bce58703-4a50-451f-a262-eff9aa8d640c3.使用方法a、下载本数据集至您的OBS桶中b、在ModelArts“数据管理-数据集”创建文本分类数据集(注意:数据集输入位置、数据集输出位置选择2个空的OBS路径)c、在数据集详细页面右上角“导入”,导入方式选择“对象存储服务(OBS)目录”,目录位置选择上述下载路径d、待导入完成后,单击页面右上角“发布”,数据按照0.8:0.2比例切分e、订阅文本分类算法,选择上述发布的文本分类数据集进行训练
-
描述文本分类数据集–外卖评论1、数据简介本数据集为外卖评论数据集,包含约4000条正向评论、8000条负向评论。数据集文本对象和标注分别存放在如下不同文件中:comment.txtcomment_result.txt2、适用的算法本数据集可用于如下AI Gallery中文文本分类算法进行训练中文文本分类-Bert:https://marketplace.huaweicloud.com/markets/aihub/modelhub/detail/?id=bce58703-4a50-451f-a262-eff9aa8d640c3、使用方法a、下载本数据集至您的OBS桶中b、在ModelArts“数据管理-数据集”创建文本分类数据集(注意:数据集输入位置、数据集输出位置选择2个空的OBS路径)c、在数据集详细页面右上角“导入”,导入方式选择“对象存储服务(OBS)目录”,目录位置选择上述下载路径,模式选择“文本和标注分离”d、待导入完成后,会显示11987条数据已标注,单击页面右上角“发布”,数据按照0.8:0.2比例切分e、订阅文本分类算法,选择上述发布的文本分类数据集进行训练
-
# 1.服务说明 FunctionGraph服务:基于事件驱动的函数托管计算服务。通过函数工作流,只需编写业务函数代码并设置运行的条件,无需配置和管理服务器等基础设施,函数以弹性、免运维、高可靠的方式运行。 # 2.方案说明 ## 2.1 需求及痛点 需求:实现CDN日志实时转存到OBS 痛点:当前CDN日志模块不支持转储能力,需要客户代码实现该能力 ## 2.2 方案设计  **方案说明:** - 定时触发器,固定频率启动函数 - 函数请求CDN日志接口,获取日志下载链接 - 函数请求下载链接,将下载的日志上传到OBS固定目录下。 ## 2.3 服务创建 ### 2.3.1 确认CDN日志记录状态 - 在华为云控制台查看CDN日志记录是否正常,如图可知日志会有5个小时的延迟。  ### 2.3.2 FunctionGraph新建函数 - 登录华为云控制台,进入“管理与部署>统一身份认证服务”,选择“委托”页签,点击创建“委托”。  - 下一步,进入委托配置权限界面。作用范围:全局服务;权限选择:OBS OperateAccess 、CDN LogsReadOnlyAccess。点击确认  - 华为云控制台,选择“计算>函数工作流”,进入函数工作流界面,点击右上角“创建函数”,输入图片中的信息,点击创建函数  - 创建后,进入代码编辑界面,将 Demo代码 的代码内容复制到在线IDE  - 点击配置按钮,配置“环境变量”  **注:** url :https://cdn.myhuaweicloud.com/v1.0/cdn/logs(CDN日志查询的url)。 domain_name :xxx.com(需要转存日志的CDN加速域名)。 obsAddress :xxx.com(用于存日志的OBS桶域名)。 destBucket :******(用于存日志的OBS桶文件夹名称)。 - 在函数配置界面选择“触发器”,点击右侧“创建触发器”,配置内容如下,点击确定。(实例代码中日志转储的日志为最新生成的近一小时日志)  - 在函数配置界面,单击右上角“请选择测试事件”下拉框,选择“配置测试事件”,配置内容如下,点击保存即可。  - 在函数配置界面,单击右上角“请选择测试事件”下拉框,选择“配置测试事件”,配置内容如下,点击保存即可。  - 点击函数的保存按钮即可,函数配置成功。 # 3.FunctionGraph适用说明 该FunctionGraph函数工作流适用于CDN日志转储OBS,转储规则为增量转储,可通过配置触发器以及修改代码实现定时增量转储固定周期的CDN日志。 # 4.Demo代码 ```python # -*- coding:utf-8 -*- import requests import datetime import time import os import sys import json from com.obs.client.obs_client import ObsClient from urllib.parse import urlparse if sys.version_info.major == 2 or not sys.version > '3': import httplib else: import http.client as httplib current_file_path = os.path.dirname(os.path.realpath(__file__)) sys.path.append(current_file_path) TEMP_ROOT_PATH = "/tmp/" # OBS文件下载后的存储路径 region = 'china' # 默认值,用于FunctionGraph连接OBS使用 secure = True # 默认值,用于FunctionGraph连接OBS使用 signature = 'v4' # 默认值,用于FunctionGraph连接OBS使用 port = 443 # 默认值,用于FunctionGraph连接OBS使用 path_style = True # 默认值,用于FunctionGraph连接OBS使用 def handler(event, context): #引用context的logger方法 logger = context.getLogger() #CDN日志记录查询接口的起始时间,转换成时间戳;当前为近6个小时的日志记录 timer = (datetime.datetime.now()-datetime.timedelta(hours=6)).strftime("%Y-%m-%d %H") timeStamp = int(time.mktime(time.strptime(timer,"%Y-%m-%d %H"))*1000) #配置日志转储的起始时间点,转换成时间戳 timeStr = (datetime.datetime.now()-datetime.timedelta(hours=6)).strftime("%Y-%m-%d %H") timeStrStamp = int(time.mktime(time.strptime(timeStr,"%Y-%m-%d %H"))*1000) #配置日志转储的终止时间点,转换成时间戳 timeEnd = (datetime.datetime.now()-datetime.timedelta(hours=5)).strftime("%Y-%m-%d %H") timeSEndStamp= int(time.mktime(time.strptime(timeEnd,"%Y-%m-%d %H"))*1000) #CDN日志记录查询接口参数字段,显示数量为 pageSize* pageNumber pageSize = 5000 pageNumber = 1 #https请求加上verify=False忽略SSL验证后会出现警告,使用以下代码忽略警告 requests.packages.urllib3.disable_warnings() #queryDate 日志的产日日期,用于日志存储路径使用 queryDate = (datetime.datetime.now()-datetime.timedelta(hours=6)).strftime("%Y-%m-%d") #使用start函数 start(context, queryDate, timeStamp, pageSize, pageNumber,timeStrStamp,timeSEndStamp) #定义start函数,进行日志记录查询 def start(context, queryDate, timeStamp, pageSize, pageNumber,timeStrStamp,timeSEndStamp): #引用context的logger方法 logger = context.getLogger() #引用context的中用户参数(新建函数后配置的参数),引用url,domain_name logUrl = context.getUserData('url') domainName = context.getUserData('domain_name') #request的请求参数 params = {'query_date': timeStamp, 'domain_name': domainName, 'page_size': pageSize, 'page_number': pageNumber, 'enterprise_project_id':'ALL'} #request的请求头 headers = {'Content-Type': 'application/json;charset=UTF-8', 'X-Auth-Token': context.getToken()} #发起日志记录接口的请求, res = requests.get(logUrl, params=params, headers=headers, verify=False) # 请求状态码判断,若非200,打印响应信息 if res.status_code != 200: logger.info("query log urls: " + res.url + ", error: " + res.text) return ("query log urls: " + res.url + ", error: " + res.text) #创建res.text的python对象 resJson = json.loads(res.text) #打印res.text的内容 logger.info(res.text) #将响应信息中的total的值赋予total total = resJson['total'] #定义变量i ,用于循环计数 i = 0 #从resjson logs值中循环取值 for val in resJson['logs']: i += 1 #打印 val中的link的值 logger.info(val["link"]) #val中的start_time的值赋予start_time start_time = val["start_time"] #取时间段内日志记录 if int(start_time) >= timeStrStamp and int(start_time) timeSEndStamp: # link分为6个部分,协议、位置、路径、参数、查询、片段。 url = urlparse(val["link"]) # 将url 中的请求地址根据“:”进行分片 netlocs = url.netloc.split(":") # 创建连接 conn = httplib.HTTPConnection(netlocs[0], int(netlocs[1])) conn.request('GET', url.path + "?" + url.query) # CDN日志,OBS的存储路径 objName = os.path.join(val["domain_name"], queryDate, val["name"]) #使用 put_content_to_obs函数 put_content_to_obs(context, objName, conn.getresponse()) else: continue # 判断转储的日志量与total对比;不满足则重新执行start函数 if i > total: start(context, queryDate, timeStamp, pageSize, pageNumber + 1,timeStrStamp,timeSEndStamp) #定义put_content_to_obs函数,上传日志到OBS def put_content_to_obs(context, objName, content): #引用context中的方法获取ak,sk ak = context.getAccessKey() sk = context.getSecretKey() #引用context中的用户定义变量obsAddress,destBucket obsAddress = context.getUserData('obsAddress') destBucket = context.getUserData('destBucket') #创建OBS上传实例 TestObs = ObsClient(access_key_id=ak, secret_access_key=sk, is_secure=secure, server=obsAddress, signature=signature, path_style=path_style, region=region, ssl_verify=False, port=port, max_retry_count=5, timeout=20) #上传日志 resp = TestObs.putContent(destBucket, objName, content=content) #判断执行结果 if resp.status 300: print('requestId:', resp.requestId) else: print('errorCode:', resp.errorCode) print('errorMessage:', resp.errorMessage) ``` # 5.Demo代码说明 ## 5.1 注释说明 ```python #CDN日志记录查询接口的起始时间,转换成时间戳;当前为近6个小时的日志记录 timer = (datetime.datetime.now()-datetime.timedelta(hours=6)).strftime("%Y-%m-%d %H") timeStamp = int(time.mktime(time.strptime(timer,"%Y-%m-%d %H"))*1000) #配置日志转储的起始时间点,转换成时间戳 timeStr = (datetime.datetime.now()-datetime.timedelta(hours=6)).strftime("%Y-%m-%d %H") timeStrStamp = int(time.mktime(time.strptime(timeStr,"%Y-%m-%d %H"))*1000) #配置日志转储的终止时间点,转换成时间戳 timeEnd = (datetime.datetime.now()-datetime.timedelta(hours=5)).strftime("%Y-%m-%d %H") timeSEndStamp= int(time.mktime(time.strptime(timeEnd,"%Y-%m-%d %H"))*1000) ``` **示例说明:** 假设代码执行时间为 2021-12-30 20:30 日志记录查询接口的查询时间为 timestamp=2021-12-30 14:00 至 2021-12-30 20:30 由于CDN的日志生成时间延迟6小时,则 2021-12-30 14:00 至 2021-12-30 20:30 的时间内只有2021-12-30 14:00 的日志文件生成。 由于设置触发器每小时触发一次,即可每小时上传一次最新生成的日志,实现增量上传。 ## 5.2 Context说明 | 方法名 | 方法说明 | |:---|:---| | getRequestID() | 获取请求ID。 | | getRemainingTimeInMilliSeconds () | 获取函数剩余运行时间。 | | getAccessKey() | 获取用户委托的AccessKey(有效期24小时),使用该方法需要给函数配置委托。 | | getSecretKey() | 获取用户委托的SecretKey(有效期24小时),使用该方法需要给函数配置委托。 | | getUserData(string key) | 通过key获取用户通过环境变量传入的值。 | | getFunctionName() | 获取函数名称。 | | getRunningTimeInSeconds () | 获取函数超时时间。 | | getVersion() | 获取函数的版本。 | | getMemorySize() | 分配的内存。 | | getCPUNumber() | 获取函数占用的CPU资源,单位为millicore(1 core=1000 millicores)。取值与MemorySize成比例,默认是128M内存占0.1个核(100 millicores),函数占用的CPU为基础CPU:200 millicores,再加上内存按比例占用的CPU,计算方法:内存/128 * 100 + 200。 | | getProjectID() | 获取projectID。 | | getPackage() | 获取函数组。 | | getToken() | 获取用户委托的token(有效期24小时),使用该方法需要给函数配置委托。 | | getLogger() | 获取context提供的logger方法,返回一个日志输出类,通过使用其info方法按“时间-请求ID-输出内容”的格式输出日志。如调用info方法输出日志:logg = context.getLogger() logg.info("hello") | # 6.实测结果 - FunctionGraph函数界面,点击测试按钮。查看执行结果以及转储到OBS中的日志。 **a.FunctionGraph 函数界面**  **b.OBS界面查看日志** 
-
1.dwscontroller后台数据库rms 请参考数据库登录2.执行如下sql语句获取obsUser,ak,sk信息select obsUser,ak,sk FROM rds_obs_info;sk 进行解密解密请参考 加密密文解密: https://bbs.huaweicloud.com/forum/forum.php?mod=viewthread&tid=170251
-
假设名称为15的文件夹里有多张图片,想清空此文件夹并且删除它,在nodejs里面应该怎么搞?试了一下用这个方法 ,但是它只能删文件,不能删文件夹 obsClient.deleteObject( { Bucket, Key: filename, },
-
项目:茅台需求:第三方系统需要调用ABC cube的上传文件的后端接口进行文件上传的操作;文档中,通过调用AppCube的Rest接口实现与OBS的对接。将action设置为putobject文件上传失败https://support.huawei.com/bescloud/BES%20Cloud%20Open%20Platform/1.2/topic/view.do?projectid=bes_cloud_platform_zh&lang=zh&pidid=pid_129668509270112493999&topicid=ZH-CN_TOPIC_0000001145287835请求地址:https://studio.e.huawei.com/u-route/baas/sys/v1.0/connectors/003W000000hTvtW4Nugi/action请问想第三方系统调用该接口去进行文件上传,该如何设置参数?
-
请问除了拿到流的方式下载,怎么获取到http方式url地址下载?
上滑加载中
推荐直播
-
华为云码道Agent集成与鸿蒙实战2026/08/11 周二 19:00-21:00
王一男-华为云码道产品规划专家;李炎-华为云码道产品专家;彭江敏-华为云鸿蒙端云一体化开发专家
本次直播带你解读华为云码道7月份产品新特性、新功能。更有专家演示码道Agent Space × 钉钉机器集成实战,从0到1打通消息通道;码道鸿蒙端云一体化实战,快速搭建员工签到系统。
回顾中 -
华为云开发者AI素养直播课·第三期2026/08/21 周五 16:00-18:00
林华鼎-华为云AI开发者运营负责人;念擎-华为云AI开发者运营案例开发专家
本期直播内容:AI六层能力首次详细解读 + 新一代华为云开发者空间亮相 + 校园案例直播带练
回顾中
热门标签