npm package discovery and stats viewer.

Discover Tips

  • General search

    [free text search, go nuts!]

  • Package details

    pkg:[package-name]

  • User packages

    @[username]

Sponsor

Optimize Toolset

I’ve always been into building performant and accessible sites, but lately I’ve been taking it extremely seriously. So much so that I’ve been building a tool to help me optimize and monitor the sites that I build to make sure that I’m making an attempt to offer the best experience to those who visit them. If you’re into performant, accessible and SEO friendly sites, you might like it too! You can check it out at Optimize Toolset.

About

Hi, 👋, I’m Ryan Hefner  and I built this site for me, and you! The goal of this site was to provide an easy way for me to check the stats on my npm packages, both for prioritizing issues and updates, and to give me a little kick in the pants to keep up on stuff.

As I was building it, I realized that I was actually using the tool to build the tool, and figured I might as well put this out there and hopefully others will find it to be a fast and useful way to search and browse npm packages as I have.

If you’re interested in other things I’m working on, follow me on Twitter or check out the open source projects I’ve been publishing on GitHub.

I am also working on a Twitter bot for this site to tweet the most popular, newest, random packages from npm. Please follow that account now and it will start sending out packages soon–ish.

Open Software & Tools

This site wouldn’t be possible without the immense generosity and tireless efforts from the people who make contributions to the world and share their work via open source initiatives. Thank you 🙏

© 2024 – Pkg Stats / Ryan Hefner

@tencent-sdk/faas

v1.0.9

Published

Tencent cloud faas sdk

Downloads

7,174

Readme

Tencent Cloud FaaS SDK

专门为 腾讯云云函数 提供的 SDK 工具.

安装

$ npm i @tencent-sdk/faas --save
# 或者
$ yarn add @tencent-sdk/faas

使用

初始化实例:

import { FaaS } from '@tencent-sdk/faas';

const client = new FaaS({
  secretId: 'Please input your SecretId',
  secretKey: 'Please input your SecretKey',
  token: 'Please input your Token',
  region: 'ap-guangzhou',
  debug: false,
});

参数说明

| 参数 | 描述 | 类型 | 必须 | 默认值 | | --------- | ------------------------ | ------- | :--: | ------------ | | secretId | 腾讯云 API 密钥 ID | string | 是 | '' | | secretKey | 腾讯云 API 密钥 Key | string | 是 | '' | | token | 腾讯云临时鉴权密钥 Token | string | 否 | '' | | region | 请求服务地域 | string | 否 | ap-guangzhou | | debug | 是否打印调试信息 | boolean | 否 | false |

支持方法

getRegion

获取当前地区配置:

const region = client.getRegion();

setRegion

配置服务地区:

client.setRegion('ap-guangzhou');

invoke

调用函数:

const res = await faas.invoke({
  name: 'serverless-test',
  namespace: 'default',
  qualifier: '$LATEST',
});

参数说明:

| 参数 | 描述 | 类型 | 必须 | 默认 | | --------- | -------- | :----: | :--: | --------- | | name | 函数名称 | string | 是 | | | namespace | 命名空间 | string | 否 | default | | qualifier | 函数版本 | string | 否 | $LATEST | | event | 触发参数 | object | 否 | {} |

event 为触发函数的事件对象的。

如果函数是 web 类型,event 对象参数如下:

| 参数 | 描述 | 类型 | 必须 | 默认 | | ------ | -------- | :----: | :--: | ----- | | method | 请求方法 | string | 否 | get | | path | 请求路径 | string | 否 | / | | data | 请求数据 | object | 否 | {} |

getClsConfig

获取函数 CLS 配置:

const res = await faas.getClsConfig({
  name: 'serverless-test',
  namespace: 'default',
  qualifier: '$LATEST',
});

getLogList

获取日志列表:

const res = await faas.getLogList({
  name: 'serverless-test',
  namespace: 'default',
  qualifier: '$LATEST',
});

注意: 默认获取最近 10 分钟日志。

通过 startTimeendTime 参数,获取时间段内日志:

const res = await faas.getLogList({
  name: 'serverless-test',
  namespace: 'default',
  qualifier: '$LATEST',
  startTime: '2021-04-30 14:00:00',
  endTime: '2021-04-30 14:15:00',
});

注意:时间必须是 UTC+8 (亚洲/上海时区)时间。

由于云函数是流失日志,日志落盘到 CLS 是有时间延迟的,所以在实时获取日志是会存在最新的部分日志信息并不完整,如果需要过滤掉这些不完整的日志,可以通过传递参数 isFilterCompletedtrue 来实现。

参数说明:

| 参数 | 描述 | 类型 | 必须 | 默认 | | ----------------- | ---------------------------------- | :--------------: | :--: | ------------ | | name | 函数名称 | string | 是 | | | namespace | 命名空间 | string | 否 | default | | qualifier | 函数版本 | string | 否 | $LATEST | | startTime | 开始时间,支持格式化的时间和时间戳 | string\|number | 否 | | | endTime | 结束时间,支持格式化的时间和时间戳 | string\|number | 否 | Date.now() | | reqId | 请求 ID | string | 否 | | | status | 日志状态 | string | 否 | | | interval | 时间间隔,单位秒 | string | 否 | 600s | | limit | 获取条数 | string | 否 | | | isFilterCompleted | 是否过滤掉不完整的日志 | boolean | 否 | false |

getLogDetail

获取指定请求 ID 日志详情(日志元数据):

const res = await faas.getLogDetail({
  name: 'serverless-test',
  namespace: 'default',
  qualifier: '$LATEST',
  logsetId: 'xxx-xxx',
  topicId: 'xxx-xxx',
  reqId: 'xxx-xxx',
});

参数说明:

| 参数 | 描述 | 类型 | 必须 | 默认 | | --------- | ----------- | :----: | :--: | --------- | | name | 函数名称 | string | 是 | | | namespace | 命名空间 | string | 否 | default | | qualifier | 函数版本 | string | 否 | $LATEST | | logsetId | 日志集 ID | string | 是 | | | topicId | 日志主题 ID | string | 是 | | | reqId | 请求 ID | string | 是 | |

getLogByReqId

通过请求 ID 获取日志详情(组装日志数据):

const res = await faas.getLogByReqId({
  name: 'serverless-test',
  namespace: 'default',
  qualifier: '$LATEST',
  reqId: 'xxx-xxx',
});

参数说明:

| 参数 | 描述 | 类型 | 必须 | 默认 | | --------- | -------- | :----: | :--: | --------- | | name | 函数名称 | string | 是 | | | namespace | 命名空间 | string | 否 | default | | qualifier | 函数版本 | string | 否 | $LATEST | | reqId | 请求 ID | string | 是 | |

错误码

| 类型 | 错误码 | 描述 | | ---------------------- | ------ | ------------------------ | | API_FAAS_get | 1000 | 查找函数其他错误信息 | | API_FAAS_get | 1001 | 无法找到制定函数 | | API_FAAS_getClsConfig | 1002 | 无法获取函数的 CLS 配置 | | API_FAAS_getLogByReqId | 1003 | 无效的请求 ID | | API_FAAS_getTriggers | 1004 | 无法获取函数的触发器列表 | | API_FAAS_getNamespace | 1005 | 未找到制定的 namespace | | API_FAAS_getQualifier | 1006 | 未找到指定的 qualifier |

License

MIT