如何在ROS中检查保存log的文件夹有多大

发布时间:2023-09-14  

检查log文件夹占用空间

launch这个包还负责检查保存log的文件夹有多大。在ros_comm-noet-develtoolsroslaunchsrcroslaunch_ init _.py文件中的main函数里,有以下语句。

看名字就知道是干啥的了。

rlul.check_log_disk_usage()

再打开同一路径下的rlutil.py,发现它又调用了rosclean包中的get_disk_usage函数。

我们发现,这个函数里直接写死了比较的上限:disk_usage > 1073741824,当然这样不太好,应该改为可配置的。

数字1073741824的单位是字节,刚好就是1GB(102 4 3 1024^31024 3by)。

我们要是想修改log文件夹报警的上限,直接改这个值即可。

def check_log_disk_usage():
    """
    Check size of log directory. If high, print warning to user
    """
    try:
        d = rospkg.get_log_dir()
        roslaunch.core.printlog("Checking log directy for disk usage. This may take a while.nPress Ctrl-C to interrupt") 
        disk_usage = rosclean.get_disk_usage(d)
        # warn if over a gig
        if disk_usage > 1073741824:
            roslaunch.core.printerrlog("WARNING: disk usage in log directory [%s] is over 1GB.nIt's mended that you use the 'rosclean' command."%d)
        else:
            roslaunch.core.printlog("Done checking log file disk usage. Usage is < 1GB.")            
    except:
        pass

我们刨根问底,追查rosclean.get_disk_usage(d)是如何实现的。

这个rosclean包不在ros_comm里面,需要单独。

打开后发现这个包还是跨平台的,给出了Windows和下的实现。

如果是Windows系统,用os.path.getsize函数获取文件的大小,通过os.walk函数遍历所有文件,加起来就是文件夹的大小。

如果是Linux系统,用Linux中的du -sb命令获取文件夹的大小。哎,搞个不仅要学习python,还得熟悉Linux,容易吗?

主节点会获取用户设置的ROS_MASTER_URI变量中列出的URI地址和号(默认为当前的本地IP和11311端口号)。

文章来源于:电子工程世界    原文链接
本站所有转载文章系出于传递更多信息之目的,且明确注明来源,不希望被转载的媒体或个人可与我们联系,我们将立即进行删除处理。

相关文章

    () roslaunch.main开启了日志日志记录的信息可以帮我们了解main函数执行的顺序。 我们去Ubuntu的.ros/log/路径下,打开roslaunch-ubuntu-52246.log日志文件,内容......
    logging.Enabling Logfile 'candump-2023-09-16_013511.log' 会在当前目录下生成 candump-2023-09-16_013511.log日志文件......
    车联网攻防(2024-02-04)
    ' 会在当前目录下生成 candump-2023-09-16_013511.log日志文件。 2、canplayer 重放攻击 canplayer 是 can-utils 工具包中的一个命令,用于......
    :   再kermit正常运行下,按下”CTRL + ”再输入"c",返回到kermit的命令行,输入”log session”就会再当前目录下保存日志为sesion.log. 3.安装NFS服务......
    的Artifactory实例的日志。JFrog SaaS Log Streamer与Datadog的集成使企业能够选择最重要的日志并对其进行优先级排序,重点关注对业务影响最大的项目和相关举措,从而......
    由JFrog管理的Artifactory实例的日志。JFrog SaaS Log Streamer与Datadog的集成使企业能够选择最重要的日志并对其进行优先级排序,重点......
    这样简单的功能有时候却不是那么好用,比如: 一款新拿到的芯片,没有串口驱动时如何打印log 某些应用下对时序要求比较高,串口输出log占用时间太长怎么办?比如USB枚举。 某些bug正常运行时会出现,当打......
    /etc/boa/ 目录下。 3. 创建/var/log/boa/ 目录,这样Boa服务器启动时会在该目录下创建日志文件。 4. 将Linux系统上/etc/mime.types 文件复制到OK6410......
    由管理的Artifactory实例的日志。JFrog SaaS Log Streamer与的集成使企业能够选择最重要的日志并对其进行优先级排序,重点关注对业务影响最大的项目和相关举措,从而提高可视性和效率。本文......
    使用同一台电脑采集数据和验证,并且连接电源,不使 用电池。 图3. 数据标注 图4. 数据采集 Log 2.2.4.     采集日志 1.   Log 信息会自动保存在上位机同目录下,以当前时间作为文件......

我们与500+贴片厂合作,完美满足客户的定制需求。为品牌提供定制化的推广方案、专属产品特色页,多渠道推广,SEM/SEO精准营销以及与公众号的联合推广...详细>>

利用葫芦芯平台的卓越技术服务和新产品推广能力,原厂代理能轻松打入消费物联网(IOT)、信息与通信(ICT)、汽车及新能源汽车、工业自动化及工业物联网、装备及功率电子...详细>>

充分利用其强大的电子元器件采购流量,创新性地为这些物料提供了一个全新的窗口。我们的高效数字营销技术,不仅可以助你轻松识别与连接到需求方,更能够极大地提高“闲置物料”的处理能力,通过葫芦芯平台...详细>>

我们的目标很明确:构建一个全方位的半导体产业生态系统。成为一家全球领先的半导体互联网生态公司。目前,我们已成功打造了智能汽车、智能家居、大健康医疗、机器人和材料等五大生态领域。更为重要的是...详细>>

我们深知加工与定制类服务商的价值和重要性,因此,我们倾力为您提供最顶尖的营销资源。在我们的平台上,您可以直接接触到100万的研发工程师和采购工程师,以及10万的活跃客户群体...详细>>

凭借我们强大的专业流量和尖端的互联网数字营销技术,我们承诺为原厂提供免费的产品资料推广服务。无论是最新的资讯、技术动态还是创新产品,都可以通过我们的平台迅速传达给目标客户...详细>>

我们不止于将线索转化为潜在客户。葫芦芯平台致力于形成业务闭环,从引流、宣传到最终销售,全程跟进,确保每一个potential lead都得到妥善处理,从而大幅提高转化率。不仅如此...详细>>