问题标签 [s3-object-tagging]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
1971 浏览

amazon-web-services - 使用 AWS Athena 查询 S3 对象标记

是否可以使用AWS Athena查询S3 对象标记?例如,如果我有这样的 S3 布局

每个对象都有一个 S3 对象标签,例如

那么是否可以运行 AWS Athena 查询以获取具有关联标签的任何对象,例如

这只是一个示例,并不反映我实际的 S3 存储桶/对象前缀布局。随意在您的答案/评论中使用您希望的任何布局。

最终,我有大量对象可能位于不同的存储桶和文件夹路径中,但它们彼此相关,我的目标是标记它们,以便我可以查询特定的 id 值并获取与该 id 相关的所有对象。id 值将是一个 GUID,该 GUID 将映射到许多不同类型的相关对象,例如,我可以有一个视频文件、一个图片文件、一个元数据文件和一个 json 文件,我想得到所有这些文件中的哪些使用了它们的共同 id 值;请随时提供建议,因为我有能力按照我认为合适的方式构建它。

更新 - 注意 S3 对象元数据S3 对象标记是两个不同的东西。

0 投票
2 回答
1360 浏览

amazon-web-services - S3 生命周期策略删除没有特定标记值的所有对象

在阅读此 S3 Lifecycle Policy 文档时,我发现可以删除包含特定key=value对的 S3 对象,例如,

但是是否有可能创建一个类似的规则来删除任何不在key=value对中的对象?例如,每当我的对象被访问时,我都可以用当前日期的天数来更新它的标签,例如object-last-accessed=07-26-2019. 然后我可以创建一个每天删除当前 S3 生命周期策略的 Lambda 函数,然后创建一个新的生命周期策略,该策略在过去 30 天的每一天都有一个标签,然后我的生命周期策略将自动删除任何尚未访问的对象过去 30 天;任何访问时间超过 30 天的内容的日期值都会比生命周期策略中的任何值都旧,因此它会被删除。

这是我想要的一个例子(注意我添加了所需的字段<exclude>

像我的虚构<exclude>价值这样的东西可能吗?我想删除过去 30 天内未访问过的任何 S3 对象(这与超过 30 天的对象不同)。

0 投票
1 回答
479 浏览

amazon-s3 - S3 批量操作:通过批量操作 ui 创建对象标记失败

在创建批处理作业以标记清单文件中的所有对象时,我收到以下错误“无法将作业报告写入您的报告存储桶。请检查您的权限”

我也使用相同的存储桶进行报告。

此外,我添加了必要的权限来创建作业、获取对象、放置对象、放置对象标签等。

我无法在网上找到解决方案。

0 投票
1 回答
225 浏览

node.js - AWS LAMBDA S3 Glacier - 如果 S3 对象的存储类在 Glacier 中,如何检索它

我试图使用 Lambda NodeJS 下载文件。

这是我们使用预签名 URL 从 S3 获取文件的方法

它工作正常.. 但是当我们下载 GLACIER 存储类中的文件时,它最终会出现错误..

这是对象为冰川存储类时的预签名url的返回

我一直在研究如何从 lambda 中获取对象的属性,这样如果我们发现文件处于存储类的什么时间,我们就可以做逻辑..

0 投票
1 回答
51 浏览

arrays - Ruby按特定顺序合并两个数组

我正在尝试使用来自 json 对象的 s3api cli 为 aws put-object-tagging 创建“TagSet”。我已经将 json 解析为散列,这是我实现最终目标的最大成功。

示例 json:

最终目标示例:

到目前为止,我已经将 json 解析为哈希,然后使用以下命令将键和值拆分为 2 个数组:

我想我可以遍历每个数组并将它们插入到一个数组中。但是我得到的输出是每个值重复的所有键的递归列表。

输出:

任何有关如何创建此 TagSet 的建议将不胜感激!

0 投票
2 回答
91 浏览

python - 展开 Python Tkinter 对象类型

发现现有类型有这个问题:

然而,我刚刚开发了一些工具提示(气球),我已经分配给了一些按钮,并且希望能够将它们全部召回为一种独特的类型。此外,我还想手工制作画布对象,这些对象将像带有、 、 和<enter>事件<leave><active>伪按钮一样操作。我如何为他们声明一个新的对象类型?<press><release>

0 投票
1 回答
134 浏览

amazon-s3 - 删除具有任意标签值的 S3 对象

我天真地用一个公共键标记了 S3 对象,但是任意值(UUID每批一个),相信它会“很容易”返回并删除具有指定标记的每个对象。

到目前为止,我的测试表明,如果我指定一个基于仅键(无值)过滤的生命周期规则,那么它仅匹配也具有键且没有值的对象,而不是匹配具有该键的所有对象而不考虑值.

我目前正在等待午夜 UTC,以确保问题不在 Terraform 和 Amazon S3 之间。但是,如果有一种已知的指定方式apply rule to all objects with tag-key K,那将非常有帮助;迄今为止我发现的文档还不是很清楚。

为了完整起见,需要一点地形:

0 投票
0 回答
12 浏览

sql - s3object 查询不返回空字段 where 子句的结果

我正在尝试使用空白字段 where 子句运行查询,但它不返回任何结果,但对于任何值,相同的查询都可以正常工作

查询工作正常:

但是当我尝试获得空白的结果时,它什么也不返回

如果有任何其他方法可以获取空白字段的结果,我没有找到任何文档,我也尝试过,IS NULL但没有按预期工作

有谁知道是否有其他方法可以实现它

0 投票
0 回答
8 浏览

c# - 未使用 generate_presigned_post 设置标签

TL;在使用generate_presigned_post

大家好,

我正在使用 Python 和 Boto3 使用以下脚本创建预签名的上传 url:

在客户端,我有以下代码:

S3 在上传时不会抛出错误,但是当我在控制台中查看对象时,我没有看到正在设置的标签。我错过了什么?查看控制台时正在设置x-amz-meta-u1元数据。

任何帮助是极大的赞赏。