手机版

百科生活 投稿

perflog是什么文件夹,电脑里的perflogs(利用Splunk做应用程序的性能分析)

百科 2026-02-15 12:11:08 投稿 阅读:7599次

关于【perflog是什么文件夹】,电脑里的perflogs,今天小编给您分享一下,如果对您有所帮助别忘了关注本站哦。

  • 内容导航:
  • 1、perflog是什么文件夹
  • 2、利用Splunk做应用程序的性能分析

1、perflog是什么文件夹

perflog是Windows的性能监视器存放收集的数据的文件夹(PerformanceLog),放在系统盘根目录下,运行perfmon在性能监视器里新建新的数据收集器集,默认路径就是systemdrive\PerfLogs\Admin\新的数据收集器集。

电脑使用技巧:以win7系统为例,用户想要为自己的电脑设置开机密码的话,首先打开电脑,打开电脑后点击开始菜单,打开后点击控制面板。

进入到控制面板页面后点击用户账户和家庭安全,接着点击用户账户选项,然后点击为您的账户创建密码,打开后根据页面提示操作就可以了。

若用户使用的笔记本电脑,电脑卡住了,无法移动鼠标的话,可以直接按住笔记本电脑的电源键进行关机操作,然后再重新开机就可以了。

资料拓展:Windows7,是由微软公司(Microsoft)开发的操作系统,内核版本号为WindowsNT6.1。Windows7可供家庭及商业工作环境有笔记本电脑、多媒体中心等使用。微软宣布,2020年1月14日将停止对Windows7进行安全更新的支持。

2、利用Splunk做应用程序的性能分析

通过日志进行性能测试是非常常见的,传统的也是在要分析的代码处,注入性能日志,然后在程序运行后,对写入的性能数据进行分析。使用Splunk,方法是一样的,但是有以下明显的改进

  1. Splunk提供大量友好的分析命令和图表,无需另行开发分析日志的程序
  2. Splunk可以实时的对应用程序作分析,可以在程序的运行过程中,一边运行,一边分析

我下面举一个我碰到的例子。

我要分析的程序是一个从AWS CloudWatch收集数据的Python程序。收集数据使用的是AWS提供的Restful API (Boto),为了更高效的收集数据,程序使用多个线程来调用Restful API 的Query接口。我希望通过性能日志了解每一个请求大概的耗时,以决定使用多少个线程数和对应的采集间隔。

首先,需要写日志:

logger.log(logging.DEBUG, "PerfLog=QueryStart" )## Query Code Goes Heredo_query_aws()## Query Completelogger.log(logging.DEBUG, "PerfLog=QueryEnd, Query Result)

注意使用Name=Value的形式可以帮助Splunk在搜索时,提取要分析的字段。

然后运行程序,程序运行以后会生成日志文件,把该日志文件导入到Splunk,开始分析。

perflog是什么文件夹,电脑里的perflogs(利用Splunk做应用程序的性能分析)

点击Add Data按钮,然后跟随Splunk的指导,选择A file or directory of files. 导入你的日志文件,导入过程中,Splunk会要求给你的日志文件命名一个sourcetype,我用的是“cloud_watch_debug”

导入好以后就可以开始搜索了。

在搜索框中输入

sourcetype="cloud_watch_debug”

Splunk会实时的返回所有的日志文件,并按时间解析为一个个的事件。

perflog是什么文件夹,电脑里的perflogs(利用Splunk做应用程序的性能分析)

Splunk的SPL(Splunk Search Language)是一个类似SQL和UNIX Command的综合体,可以对数据进行搜索,分析,统计,生成图表,支持管道,使用起来非常方便,建议大家通过官方文档来了解。

我么今天要做的是性能分析,那么我就是要统计一下,发了多少个query,每一个query用了多少时间。

每一条日志的内容大致如下

2014-08-11 10:52:40,587 DEBUG pid=3742 tid=QueryWorkerThread-1 file=aws_cloudwatch.py:_main_work_loop:469 | PerfLog = QueryStart

Splunk能够提取出大量的信息和字段(field),包括事件,pid,tid,file等等,还有我们在日志中加入的字段PerfLog。

想要知道每一个查询所花费的时间,可以通过Splunk提供的transaction命令。

sourcetype=cloud_watch_debug | transaction tid startswith="QueryStart" endswith="QueryEnd"

  • tid表示每一个transaction需要有相同的tid,也就是说同一个线程
  • startwith和endwith表示transaction的其实和结束标志

该命令返回所有的query的transaction

perflog是什么文件夹,电脑里的perflogs(利用Splunk做应用程序的性能分析)

然后我们就可以统计每一个transaction所用的时间

sourcetype=cloud_watch_debug | transaction tid startswith="QueryStart" endswith="QueryEnd" | stats sum(duration),count, avg(duration),max(duration),min(duration)

  • stats命令用于对数据进行统计
  • duration是Splunk对transaction生成的事件跨度
  • sum,count,avg,max,min是统计命令

运行结果如下:

perflog是什么文件夹,电脑里的perflogs(利用Splunk做应用程序的性能分析)

程序一共发送了111075个cloudwatch的请求,最慢的需要2.5秒,最快的0.06秒,平均大概0.11秒。

我还想知道query的耗时随时间的变化,我可以生成一个timechart

sourcetype=cloud_watch_debug | transaction tid startswith="QueryStart" endswith="QueryEnd" | timechart avg(duration)

结果如下(最近1小时):

perflog是什么文件夹,电脑里的perflogs(利用Splunk做应用程序的性能分析)

通过该分析在过去的一个小时里10:30和11:00之后的十分钟时间段,耗时略有上升,大概峰值0.2秒。

总结:

本文关键词:文件perflogs,perflogs文件夹是什么时候创建的?,PerfLogs是什么文件,perflogs是什么文件夹,c盘里面的perflogs是什么文件夹。这就是关于《perflog是什么文件夹,电脑里的perflogs(利用Splunk做应用程序的性能分析)》的所有内容,希望对您能有所帮助!

本文链接:https://bk.89qw.com/a-524995

最近发表
网站分类