gpt4 book ai didi

python - 如何查看 Lambda/tmp 存储大小的大小?

转载 作者:行者123 更新时间:2023-12-02 02:44:07 26 4
gpt4 key购买 nike

如何查看 AWS Lamdba 函数使用的存储的已用大小?

例如,像这样可以检查文件是否存在:

import os
os.path.isfile('/tmp/' + filename)

但是,我需要知道何时达到 512 MB 限制。

最佳答案

由于 Lambda 函数只是在 linux 环境中的容器上运行,因此我们可以使用操作系统来大致告诉我们临时文件系统上还剩下多少空间。

from subprocess import check_output
out = str(check_output(["df", '-k']))
print(out)
result = re.search(r"(\d+)\s+(\d+)\s+(\d+)\s+(\d+)\%\s+\/tmp", out)
size, used, available, used_pct = (int(g) for g in result.groups())

print(size, used, available, used_pct) # 538424 440 526148 1

这就是这里发生的事情。首先我们使用 subprocess.check_output运行命令的函数: df -k它显示有关磁盘空间使用信息的字符串(以 KB 为单位)。这是 lambda 函数的输出示例:
Filesystem     1K-blocks    Used Available Use% Mounted on\n/dev/root        6127168 4978732   1132052  82% /\n/dev/vdb         1965904   45296   1904224   3% /dev\n/dev/loop0        538424     440    526148   1% /tmp\n

您可以看到在字符串的末尾是 /tmp分区位于。所以我们获取输出并使用正则表达式模式搜索它: (\d+)\s+(\d+)\s+(\d+)\s+(\d+)\%\s+\/tmp它将相关字段分成 4 组,我们可以将其设置为代表 size 的自己的变量。 :总分区大小(以 KB 为单位), used :当前正在使用的空间量(以 KB 为单位), available :分区上仍然可用的空间量(以 KB 为单位)和 used_pct :正在使用的分区空间的百分比。

这是获取可用空间的一种非常简单的方法,如果需要精确测量或猜测是否可以将新文件写入磁盘,我不会使用它。但是,如果您只是在执行时记录它以进行调试,那应该没问题。

关于python - 如何查看 Lambda/tmp 存储大小的大小?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56866397/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com