小编Gun*_*t.r的帖子

如何使用追踪库?

我这里有一个非常简单的代码示例,它只想获取我传入的列表的第一项。我一直在尝试通过跟踪来检测代码帮助调试应用程序,但坦率地说,文档太复杂了,我无法完全理解。

use std::fmt::Debug;
use tracing::{span, Level, event};

fn main() {
    pub fn calculate<T: Debug, const N: usize>(data_set: [T; N]) -> (i32, i32) {

        // Tracing BoilerPlate
        event!(Level::INFO, "something happened");
        let span = span!(Level::INFO, "my_span");
        let _guard = span.enter();
        
        // Key Code 
        let _var = data_set.get(0);
        println!("Output_1: {:?}", data_set.get(0)); 
        
        event!(Level::DEBUG, "something happened inside my_span");
        
        // Ignore
        return (0, 0)
    }

    let data = [1509, 1857, 1736, 1815, 1576];
    let _result = calculate(data);
}
Run Code Online (Sandbox Code Playgroud)

具体来说,我不明白在哪里可以查看event!日志。它们似乎没有打印到任何窗口或文件或任何东西。

有人可以指导我在哪里可以找到这些调试日志,或者为我提供如何使用跟踪箱的简化说明吗?

rust rust-tracing

28
推荐指数
2
解决办法
2万
查看次数

如何按 2 个或多个字段对结构体 Vec 进行排序?

example

struct MyStruct{
    row: u8,
    column: u8
}

let my_vector = a Vec<MyStruct> with like 100 items in it
Run Code Online (Sandbox Code Playgroud)

可以说我有一个像这样的简单设置^。我想my_vector按行然后按列对 100 个项目的列表进行排序,这样我的向量就会看起来像sample 1而不是sample 2.

sample 1

my_vector = vec![
MyStruct { row: 10, column: 1 },
MyStruct { row: 10, column: 2 },
MyStruct { row: 10, column: 3 }, ]
Run Code Online (Sandbox Code Playgroud)

sample 2

my_vector = vec![
MyStruct { row: 10, column: 3 },
MyStruct { row: 10, column: 1 },
MyStruct { row: 10, …
Run Code Online (Sandbox Code Playgroud)

rust

10
推荐指数
3
解决办法
6273
查看次数

如何让 dynamodb 仅返回某些列

在此输入图像描述

您好,我这里有一个简单的 dynamodb 表,其中填充了占位符值。

我将如何仅检索sort_number,current_balanceside通过查询/扫描?

我使用的是 python 和 boto3,但是,只需说明为每个表达式和参数配置什么就足够了。

python amazon-web-services amazon-dynamodb boto3

8
推荐指数
1
解决办法
2万
查看次数

AWS - {lambda 函数} 可能未定义授权

我在尝试sam deploy我的 lambda 函数时遇到了这个问题。我在这里找到了相同问题的链接:

当使用引导部署并接受默认选项时,我收到安全约束不满足!错误。· 问题 #1990 · awslabs/aws-sam-cli

但是,即使通读了它和文档,我也不明白如何修复它。有人可以向我解释一下吗?

amazon-web-services aws-lambda

7
推荐指数
1
解决办法
3546
查看次数

AWS SAM 部署错误 - 验证错误 | CreateChangeSet操作错误

sam deploy --guided我在尝试lambda 应用程序时收到以下错误。

错误:无法为堆栈创建变更集:{stack-name},调用 CreateChangeSet 操作时发生错误 (ValidationError):Stack:arn:aws:cloudformation:ap-southeast-2:014009325916:stack/{stack-name }/f2212bf0-bb41-11ea-8ef3-0aa7af0536b6 处于 ROLLBACK_COMPLETE 状态,无法更新。

这个问题的一些进一步的背景是我的所有 lambda 函数都是这样做的not have authorization defined。不确定这是否相关,但我是在这种情况下声明的。

坦率地说,我不知道如何解决这个问题。任何帮助表示赞赏。

===

背景: 构建自动交易系统

请求 Cloudform 模板:

yaml

AWSTemplateFormatVersion: '2010-09-09'
Transform: AWS::Serverless-2016-10-31
Description: A tradingview alert wrapper that interprets alerts and makes trades according to them.

Globals:
    Function:
        # CodeUri: function/.
        # Runtime: python3.8
        # Policies:
        #     - AWSLambdaFullAccess
        # Tracing: Active
        # Timeout: 30
        Environment:
            Variables:
                APIKEY: ""
                SECRETKEY: ""


Resources:
    tradeFunction:
        Type: AWS::Serverless::Function
        Properties:
            Handler: app.trade
            Description: …
Run Code Online (Sandbox Code Playgroud)

amazon-web-services aws-lambda

4
推荐指数
1
解决办法
5630
查看次数

如何在 Windows 上通过 bash 访问 AWS SAM-CLI?

我运行的是 Windows 10,只能通过命令提示符访问 AWS SAM,而不能通过 bash。当我尝试使用 bash 时,出现bash: sam: command not found错误。

如果有帮助,我目前已经安装了 AWS CLI v2 并通过 MSI 文件安装了它。

为什么我不能通过 bash 使用 SAM?

编辑:是的,我知道它没有明确说明您可以在 AWS 设置指南中使用 bash

验证安装。完成安装后,通过打开新的命令提示符或 PowerShell 提示符进行验证。您应该能够从命令行调用 sam。

但是,我仍然希望能够通过 bash 使用它。有解决方法吗?

windows bash command-prompt amazon-web-services aws-cli

2
推荐指数
1
解决办法
727
查看次数