详情页标题前

腾讯云Serverless应用中心云端调试-同尘科技

详情页1

开发模式

开发模式是为处于开发状态下的项目可以更便捷的进行代码编写、开发调试而设计的。在开发模式中,用户可以持续地进行开发-调试的过程,尽量减少打包、更新等其他工作的干扰。

进入开发模式

在项目下执行 scf dev命令,可以进入项目的开发模式。示例如下:

$ scf devserverless-cloud-frameworkDev Mode - Watching your Component for changes and enabling streaming logs, if supported...
Debugging listening on ws://127.0.0.1:9222.For help see https://nodejs.org/en/docs/inspector.Please open chorme, and visit chrome://inspect, click [Open dedicated DevTools for Node] to debug your code.--------------------- The realtime log ---------------------17:13:38 - express-api-demo - deploymentregion: ap-guangzhouapigw: serviceId: service-b77xtibo subDomain: service-b77xtibo-1253970226.gz.apigw.tencentcs.com environment: release url: http://service-b77xtibo-1253970226.gz.apigw.tencentcs.com/release/scf: functionName: express_component_6r6xkh60k runtime: Nodejs10.15 namespace: default
express-api-demo › Watching

在进入 dev 模式后,Serverless Cloud Framework 工具将输出部署的内容,并启动持续文件监控;在代码文件有修改的情况下,将自动再次进行部署,将本地文件更新到云端。再次部署并输出部署信息:

express-api-demo › Deploying ...Debugging listening on ws://127.0.0.1:9222.For help see https://nodejs.org/en/docs/inspector.Please open chorme, and visit chrome://inspect, click [Open dedicated DevTools for Node] to debug your code.--------------------- The realtime log ---------------------21:11:31 - express-api-demo - deploymentregion: ap-guangzhouapigw:  serviceId:   service-b7******  subDomain:   service-b7******-1253******.gz.apigw.tencentcs.com  environment: release  url:         http://service-b7******-1253******.gz.apigw.tencentcs.com/release/scf:  functionName: express_component_u******  runtime:      Nodejs10.15  namespace:    default

注意当前 serverless dev 仅支持 Node.js 10 运行环境,后续将支持 Python、PHP 等运行环境的实时日志。serverless-cloud-framework 命令的简写为 scf

退出开发模式

在开发模式下,通过 Ctrl + C 可以退出开发模式(dev 模式)。

express-api-demo › Disabling Dev Mode & Closing ...
express-api-demo › Dev Mode Closed

云端调试:Node.js 10+

针对 Runtime 为 Node.js 10+ 的项目,可以通过开启云端调试,并使用针对 Node.js 的调试工具来连接云端调试,例如 Chrome DevTools、VS Code Debugger。

开启云端调试

按照如上方案进入开发模式时,如果是 Runtime 为 Node.js 10及以上版本的函数,会自行开启云端调试,并输出调试相关信息。例如在开启开发模式时,如果有如下输出,则代表已经启动云函数的云端调试:

Debugging listening on ws://127.0.0.1:9222.For help see https://nodejs.org/en/docs/inspector.Please open chorme, and visit chrome://inspect, click [Open dedicated DevTools for Node] to debug your code.

使用调试工具 Chrome DevTools

以下步骤说明如何使用 Chrome 浏览器的 DevTools 工具来连接远程环境并进行调试:1. 启动 Chrome 浏览器。2. 在地址栏中输入 chrome://inspect/ 并访问。3. 可通过以下两种方式打开 DevTools。如下图所示:

腾讯云Serverless应用中心云端调试-同尘科技

4. (推荐)单击 Devices 下的Open dedicated DevTools for Node。5. 选择 Remote Target #LOCALHOST 中具体 Target 下的inspect
如果无法打开或者没有 Target,请检查 Device 的 Configure 中是否已有 localhost:9229localhost:9222 的配置,该配置对应开启云端调试时的输出。6. 通过选择 Open dedicated DevTools for Node 方式打开的 DevTools 调试工具,可单击Sources页签看远端代码。函数的实际代码在 /var/user/ 目录下。
Sources 页签中查看的代码可能处于加载中,会随着调试进行而展示出更多远端文件。7. 可按需打开文件,在文件的指定位置设置断点。8. 通过任意方式,例如 URL 访问、页面触发、命令触发、接口触发等方式触发函数,会使得远端环境开始运行,并会在设置了断点的位置中断,等待进一步的运行。9. 通过 DevTools 的右侧工具栏,可以控制中断的程序继续执行、单步执行、步入步出等操作,也可以直接查看当前变量,或设定需跟踪查看的变量。DevTools 的进一步使用可以搜索查询 DevTools 使用说明文档

关闭云端调试

在退出开发模式时,将会自动关闭云端调试功能。

命令调试

Serverless Cloud Framework 云函数组件支持invoke命令触发云函数进行调试。对于scf deploy部署成功的云函数,进入项目目录,执行函数调用命令如下:

scf invoke  --inputs function=functionName  clientContext='{"weights":{"2":0.1}}'

说明invoke命令必须在该函数部署的 serverless.yml 文件同目录下执行。clientContext为触发函数时传递的 json 字符串。可以根据 触发事件模板 的 json 字符串格式模拟不同触发事件。
官网1折活动,限时活动,即将结束,速速收藏
同尘科技腾讯云授权服务中心。
购买腾讯云产品享受折上折,更有现金返利。同意关联立享优惠

转转请注明出处:https://www.yunxiaoer.com/149046.html

(0)
上一篇 2023年12月9日
下一篇 2023年12月9日
详情页2

相关推荐

  • 腾讯云对象存储图片高级压缩

    简介 本文档提供关于图片高级压缩的 API 概览以及 SDK 示例代码。 API 操作描述 图片高级压缩 图片高级压缩可以更加高效地将图片转换为 WebP、 AVIF 、TPG 或 HEIF 等高压缩比格式,有效降低图片传输链路及加载耗时,降低带宽及流量成本。 图片高级压缩 功能说明 高效地将图片转换为 WebP、 AVIF 、TPG 或 HEIF 等高压缩…

    腾讯云 2023年12月9日
  • 腾讯云对象存储使用 Docker 部署

    本文主要介绍如何使用 Docker 部署 GooseFS。 准备事项 1. 安装 Docker 19.03.14 及以上。2. CentOS 7及以上。3. 获取 GooseFS docker 镜像,获取v1.4.5版本镜像示例代码如下,其中版本号可参见 更新日志。 docker pull goosefs.tencentcloudcr.com/goosefs…

    腾讯云 2023年12月9日
  • 腾讯云容器镜像服务TKE 集群使用 TCR 插件内网免密拉取容器镜像同尘

    操作场景 本文介绍如何在 容器服务 TKE 中,通过使用 TCR 插件,实现内网免密拉取企业版实例内容器镜像,并创建工作负载。 前提条件 在使用容器镜像服务 TCR 企业版内托管的私有镜像进行应用部署前,您需要完成以下准备工作:已成功 购买企业版实例。已成功 创建 TKE 集群。如使用子账号进行操作,请参考 企业版授权方案示例 提前为子账号授予对应实例的操作…

    2023年12月9日
  • 腾讯云对象存储客户端加密

    简介 Java SDK 支持客户端加密,将文件加密后再进行上传,并在下载时进行解密,适用于存储敏感数据的客户。客户端加密支持以下两种方式:KMS 服务托管密钥:用户只需提供 KMS 服务的用户主密钥 ID(即 CMK ID)给 SDK。使用这种方式需要用户开通 KMS 服务,更多 KMS 服务信息参见 腾讯云密钥管理系统。用户自主保管密钥:用户提供和保管加密…

    腾讯云 2023年12月9日
  • 信息流广告,信息流部分建议宽度830px,只针对默认列表样式,顺序随机
  • 腾讯云对象存储单链接限速

    简介 本文档提供关于单链接限速相关的介绍和 SDK 示例代码。 使用说明 限速值设置范围为819200 – 838860800,单位默认为 bit/s,即800Kb/s – 800Mb/s,如果超出该范围将返回400错误。说明关于单链接限速的更多说明,请参见 单链接限速 开发者指南。 设置上传限速 // 使用高级接口必须先保证本进程存…

    腾讯云 2023年12月9日

联系我们

400-800-8888

在线咨询: QQ交谈

邮件:admin@example.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信
本站为广大会员提供阿里云、腾讯云、华为云、百度云等一线大厂的购买,续费优惠,保证底价,买贵退差。