当前位置: 首页 > news >正文

企业网站建设公司注意哪些问题51做网站广州

企业网站建设公司注意哪些问题,51做网站广州,舟山外贸建站公司,织梦网站图片设置多大前言 AWS Lambda 是一项计算服务,使用时无需预配置或管理服务器即可运行代码。AWS Lambda 只在需要时执行代码并自动缩放。借助 AWS Lambda,几乎可以为任何类型的应用程序或后端服务运行代码,而且无需执行任何管理。 Lambda Layer 是一个包…

前言

AWS Lambda 是一项计算服务,使用时无需预配置或管理服务器即可运行代码。AWS Lambda 只在需要时执行代码并自动缩放。借助 AWS Lambda,几乎可以为任何类型的应用程序或后端服务运行代码,而且无需执行任何管理。

Lambda Layer 是一个包含补充代码或数据的 .zip 文件存档,通常包含库依赖项、自定义运行时系统或配置文件。Lambda 扩展则是可以增强 Lambda 函数的功能,例如集成监控、安全性和监管工具等。

在本文中,我们将引导您了解如何将观测云服务集成到 AWS Lambda,通过配置 Lambda 层、设置环境变量,实现 Lambda 函数的指标、日志和链路采集。

前提条件

  • 确保您拥有 AWS 账户,并且具备管理 Lambda 函数的权限。
  • 已注册观测云账号

第1步:创建Lambda层

1、打开 AWS Lambda 控制台并导航至「Layers」页面。

2、点击「Create layer」,创建一个新的层。

3、在「Layer configuration」中,填写层的名称。

4、选择「Upload a .zip file」并上传以下链接对应的文件:

  • AMD架构:https://static.guance.com/datakit/datakit_aws_extension-linux-amd64.zip
  • ARM架构:https://static.guance.com/datakit/datakit_aws_extension-linux-arm64.zip

第2步:复制 ARN 并添加层到 Lambda 函数

  • 创建成功后,复制层的 ARN 值。

  • 在 Lambda 函数配置中添加此 ARN 到 Layers 部分。

第3步:配置环境变量

设置以下环境变量以确保数据正确传输到观测云:

Datakit 监听的地址名

  • DD_AGENT_HOST0.0.0.0

Datakit 监听的端口号

  • DD_TRACE_AGENT_PORT9529

DataWay 真实地址

  • ENV_DATAWAYhttps://xxxx.guance.com?token=<your-token>

第4步:日志、链路和指标采集

日志采集

  • 支持采集控制台日志。

  • Node.js 18.x 和 Go 日志采集示例。

链路采集

  • 使用 OpenTelemetry 或 DDTrace 进行链路采集
  • 对于 Go 语言,需要在业务代码中添加相应的追踪代码。Go 代码示例较为复杂,需要修改业务代码,示例如下:
package mainimport ("context""fmt""github.com/aws/aws-lambda-go/lambda""gopkg.in/DataDog/dd-trace-go.v1/ddtrace/ext""gopkg.in/DataDog/dd-trace-go.v1/ddtrace/tracer""os""time"
)type MyEvent struct {Name string `json:"name"`
}func HandleRequest(ctx context.Context, event *MyEvent) (*string, error) {return run(ctx, event)
}func run(ctx context.Context, event *MyEvent) (*string, error) {tracer.Start(tracer.WithEnv("prod"),tracer.WithService("test-file-read"),tracer.WithServiceVersion("1.2.3"),tracer.WithGlobalTag("project", "add-ddtrace-in-golang-project"),tracer.WithLambdaMode(false),)// end of app exit, make sure tracer stoppeddefer tracer.Stop()tick := time.NewTicker(time.Second)defer tick.Stop()ctx, cancel := context.WithTimeout(ctx, time.Minute*2)defer cancel()// your-app-main-entry...for {runApp()runAppWithError()select {case <-tick.C:case <-ctx.Done():message := fmt.Sprintf("Hello %s!", event)return &message, nil}}
}func main() {//run(context.Background(), &MyEvent{Name: "Hello World!"})lambda.Start(HandleRequest)
}func runApp() {var err error// Start a root span.span := tracer.StartSpan("get.data")defer span.Finish(tracer.WithError(err))// Create a child of it, computing the time needed to read a file.child := tracer.StartSpan("read.file", tracer.ChildOf(span.Context()))child.SetTag(ext.ResourceName, os.Args[0])// Perform an operation.var bts []bytebts, err = os.ReadFile(os.Args[0])span.SetTag("file_len", len(bts))child.Finish(tracer.WithError(err))
}func runAppWithError() {var err error// Start a root span.span := tracer.StartSpan("get.data")// Create a child of it, computing the time needed to read a file.child := tracer.StartSpan("read.file", tracer.ChildOf(span.Context()))child.SetTag(ext.ResourceName, "somefile-not-found.go")defer func() {child.Finish(tracer.WithError(err))span.Finish(tracer.WithError(err))}()// Perform an error operation.if _, err = os.ReadFile("somefile-not-found.go"); err != nil {// error handle}
}
  • 链路效果展示

指标采集

以下是 AWS Lambda 指标的详细列表

awslambda-metric

标签描述
aws_account_idAWS 账户ID。
aws_lambda_function_memory_sizeConfigured memory size for the Lambda function.
aws_lambda_function_nameLambda function name.
aws_lambda_function_versionLambda function version.
aws_lambda_initialization_typeInitialization type of the Lambda function.
aws_regionAWS region where the function is executed.
指标描述类型单位
billed_duration_msBilled duration in milliseconds.intms
duration_msTotal duration in milliseconds.intms
errorsErrors count.intcount
init_duration_msInitialization duration in milliseconds.intms
invocationsInvocation count.intcount
max_memory_used_mbMaximum memory used in MB.intMb
memory_size_mbMemory size configured for the Lambda function in MB.intMb
out_of_memoryOut of memory errors count.intcount
post_runtime_durationDuration of the post-runtime phase in milliseconds.intms
produced_bytesBytes produced.intB
response_duration_msResponse duration in milliseconds.intms
response_latencyResponse latency in milliseconds.intms
runtime_duration_msDuration of the runtime in milliseconds.intms
timeoutsTimeouts count.intcount

安全和隐私说明

  • 确保在配置 ENV_DATAWAY 时使用安全的连接(例如 HTTPS)。
  • 不要在日志或错误消息中暴露敏感信息。

注意事项

  • 在部署之前,确保测试所有配置。
  • 监控Lambda函数的性能,确保指标收集符合预期。
  • 定期检查Lambda层和相关配置是否有更新。

参考资料

  • AWSLambda:AWS Lambda 扩展 - 观测云文档
http://www.yayakq.cn/news/915372/

相关文章:

  • 南阳做网站 汉狮公司建立网站后还要钱吗
  • 深圳商城网站设计价格wordpress 一小时建站
  • 网站排名查询平台wordpress收到登录错误
  • 给传销做网站什么罪建水县住房和城乡建设局网站
  • 网站核心推广思路网站建设公司代理
  • 网站代理浏览器插件做设计找素材的+网站有哪些
  • wordpress 全站备份电商网站开发环境
  • 做英文网站哪个网站比较好广州天极科技
  • 0基础多久学会网站架构wordpress 工具栏遮挡
  • 深圳住房和建设局网站轮候大厅wordpress整合教程
  • 学做网站和推广要多久免费建站网站黄金网站
  • 南通网站建设搭建ppt做的最好的网站
  • 哈尔滨建设网站哪家专业营销qq怎么申请
  • 北京网站建设设计郑州做网站天强科技
  • 网站开发项目企划书陕西手机网站制作
  • 景德镇企业网站建设vi设计方案
  • 关键词挖掘工具站安卓软件下载平台
  • 做网站购买服务器吗重庆网站设计更新
  • 济宁网站制作公司中国社区建设展示中心网站
  • 美工培训网站怎么看网站有没有做404
  • 网站建设方案目录建设局查询网站首页
  • 休闲零食网站建设+中企动力网站频道与栏目的区别
  • 网站建设需要学什么能力python制作网页教程
  • 网站建设情况报告从写代码到网站运行不了了
  • 邢台做网站推广费用网站设计参考文献
  • 个人网站源码下载iis的默认网站没有自动启动
  • 做烘培网站襄阳品牌网站建设
  • 网站专题效果图怎么做兰州seo新站优化招商
  • 做网站没有做退钱网站怎么做商家定位
  • 湖南郴州建设局网站网站做301跳转需解析