{"id":203692,"date":"2013-11-26T10:55:03","date_gmt":"2013-11-26T06:55:03","guid":{"rendered":"http:\/\/savepearlharbor.com\/?p=203692"},"modified":"-0001-11-30T00:00:00","modified_gmt":"-0001-11-29T21:00:00","slug":"","status":"publish","type":"post","link":"https:\/\/savepearlharbor.com\/?p=203692","title":{"rendered":"<span class=\"post_title\">\u041e\u043f\u044b\u0442 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u044b logman \u0434\u043b\u044f \u0441\u0431\u043e\u0440\u0430 \u043c\u0435\u0442\u0440\u0438\u043a \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0432 Windows<\/span>"},"content":{"rendered":"<div class=\"content html_format\">\n<h1>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/h1>\n<p>  \u0414\u043e\u0431\u0440\u044b\u0439 \u0434\u0435\u043d\u044c!<\/p>\n<p>  \u0412 \u0441\u0432\u043e\u0435\u043c \u043f\u0435\u0440\u0432\u043e\u043c \u043f\u043e\u0441\u0442\u0435 \u044f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044cc\u044f \u043e\u043f\u044b\u0442\u043e\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0442\u0430\u043a\u043e\u0439 \u0443\u0442\u0438\u043b\u0438\u0442\u044b \u043a\u0430\u043a <b>logman<\/b>, \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 (\u0438 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e) \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c \u043f\u043e\u0434 Windows.<\/p>\n<p>  \u0412 \u043e\u0434\u0438\u043d \u0438\u0437 \u0434\u043d\u0435\u0439 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0435 \u0431\u044b\u043b\u0430 \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u0441\u043d\u044f\u0442\u0438\u044f \u043c\u0435\u0442\u0440\u0438\u043a \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u043e\u0434\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043f\u043e\u0434 Windows. \u0413\u043b\u0430\u0432\u043d\u044b\u043c \u0443\u0441\u043b\u043e\u0432\u0438\u0435\u043c \u0431\u044b\u043b\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u043e \u043c\u0438\u043d\u0438\u043c\u0443\u043c\u0443 \u043a\u0430\u043a\u0438\u0435-\u043b\u0438\u0431\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0435 \u0443\u0442\u0438\u043b\u0438\u0442\u044b, \u0438 \u0442\u0430\u043a \u043a\u0430\u043a \u043e\u043f\u044b\u0442\u0430 \u0432 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u0432\u0435\u0449\u0430\u0445 \u0443 \u043c\u0435\u043d\u044f \u043a \u0442\u043e\u043c\u0443 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043d\u0435 \u0431\u044b\u043b\u043e, \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u043a\u043e\u043f\u0430\u0432\u0448\u0438\u0441\u044c, \u0432\u044b\u0431\u043e\u0440 \u043f\u0430\u043b \u043d\u0430 logman. \u041e\u0441\u043e\u0431\u043e\u0439 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u0438 \u043d\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043b\u043e\u0441\u044c \u0438 \u043d\u0430\u0434\u043e \u0431\u044b\u043b\u043e \u043b\u0438\u0448\u044c \u043f\u043e\u043d\u044f\u0442\u044c \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440 \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u044f \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c, \u0434\u043b\u044f \u0447\u0435\u0433\u043e logman \u0441 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0432\u0437\u0433\u043b\u044f\u0434\u0430 \u0432\u043f\u043e\u043b\u043d\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u043b.<\/p>\n<p>  \u0418\u0442\u0430\u043a, \u043f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043a \u0441\u0443\u0442\u0438 \u043f\u043e\u0441\u0442\u0430.<br \/>  <a name=\"habracut\"><\/a>  <\/p>\n<h1>\u0427\u0442\u043e \u0436\u0435 \u0442\u0430\u043a\u043e\u0435 logman?<\/h1>\n<p>  \u041c\u043d\u043e\u0433\u0438\u0435 \u0438\u0437 \u0432\u0430\u0441 \u0441\u043a\u043e\u0440\u0435\u0435 \u0432\u0441\u0435\u0433\u043e \u0432 \u0440\u0430\u0431\u043e\u0442\u0435 \u0438\u043b\u0438 \u0434\u043b\u044f \u0434\u043e\u043c\u0430\u0448\u043d\u0438\u0445 \u043d\u0443\u0436\u0434 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b\u0438 \u043d\u0430\u0442\u0438\u0432\u043d\u0443\u044e Windows \u0443\u0442\u0438\u043b\u0438\u0442\u0443 Performance monitor (perfmon). \u0422\u0430\u043a \u0432\u043e\u0442 logman \u2014 \u044d\u0442\u043e \u0433\u0440\u0443\u0431\u043e \u0433\u043e\u0432\u043e\u0440\u044f command line \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0438\u0435 perfmon&#8217;\u0430. \u041e\u043d \u043f\u043e\u0437\u0432\u043e\u043b\u044f\u0435\u0442 \u0441\u043e\u0437\u0434\u0430\u0432\u0430\u0442\u044c, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u0442\u044c, \u043e\u0441\u0442\u0430\u043d\u0430\u0432\u043b\u0438\u0432\u0430\u0442\u044c \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0438 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u043d\u043e\u0441\u0442\u0438, \u043f\u0438\u0441\u0430\u0442\u044c \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442 \u0432\u043e \u0432\u043d\u0435\u0448\u043d\u0438\u0435 \u0444\u0430\u0439\u043b\u044b \u0438 \u043c\u043d\u043e\u0433\u043e \u0447\u0435\u0433\u043e \u0435\u0449\u0435. \u041c\u043d\u0435 \u0431\u044b\u043b \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c \u0442\u043e\u043b\u044c\u043a\u043e \u0431\u0430\u0437\u043e\u0432\u044b\u0439 \u0444\u0443\u043d\u043a\u0446\u0438\u043e\u043d\u0430\u043b, \u043a\u043e\u0442\u043e\u0440\u044b\u0439 \u044f \u0438 \u043e\u043f\u0438\u0448\u0443 \u043d\u0438\u0436\u0435.<\/p>\n<h1>\u041e\u0441\u043d\u043e\u0432\u043d\u044b\u0435 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0438<\/h1>\n<p>  \u041d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0435 \u0437\u0430\u043c\u0435\u0447\u0430\u043d\u0438\u0435: \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0438\u044f \u043d\u0438\u0436\u0435\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0445 \u043e\u043f\u0435\u0440\u0430\u0446\u0438\u0439 \u043d\u0435\u043e\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u043e\u0431\u043b\u0430\u0434\u0430\u0442\u044c \u043f\u0440\u0430\u0432\u0430\u043c\u0438 \u0430\u0434\u043c\u0438\u043d\u0438\u0441\u0442\u0440\u0430\u0442\u043e\u0440\u0430, \u0438\u043d\u0430\u0447\u0435 \u043c\u043e\u0436\u0435\u0442 \u0432\u044b\u043b\u0435\u0442\u0435\u0442\u044c \u0442\u0430\u043a\u0430\u044f \u043e\u0448\u0438\u0431\u043a\u0430.  <\/p>\n<pre><code class=\"dos\">\u041e\u0448\u0438\u0431\u043a\u0430: \u041e\u0442\u043a\u0430\u0437\u0430\u043d\u043e \u0432 \u0434\u043e\u0441\u0442\u0443\u043f\u0435. \u0418\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0435\u0442\u0441\u044f \u043e\u0433\u0440\u0430\u043d\u0438\u0447\u0435\u043d\u043d\u044b\u0439 \u0442\u043e\u043a\u0435\u043d, \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u0443\u0439\u0442\u0435 \u0440\u0430\u0441\u0448\u0438\u0440\u0435\u043d\u043d\u044b\u0439. <\/code><\/pre>\n<h3>\u041f\u0440\u043e\u0441\u043c\u043e\u0442\u0440 \u0441\u043e\u0437\u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0437\u0430\u043f\u0443\u0449\u0435\u043d\u043d\u044b\u0445 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u043e\u0432<\/h3>\n<p>  \u041f\u043e\u0441\u043c\u043e\u0442\u0440\u0435\u0442\u044c \u0441\u043f\u0438\u0441\u043e\u043a \u0441\u0431\u043e\u0440\u0449\u0438\u043a\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445 \u043c\u043e\u0436\u043d\u043e \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 <code>logman<\/code><br \/>  \u0412 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0435 \u0447\u0435\u0433\u043e \u0431\u0443\u0434\u0435\u0442 \u043f\u043e\u043b\u0443\u0447\u0435\u043d \u043f\u0440\u0438\u043c\u0435\u0440\u043d\u043e \u0442\u0430\u043a\u043e\u0439 \u0432\u044b\u0432\u043e\u0434:  <\/p>\n<pre><code>\u0413\u0440\u0443\u043f\u043f\u0430 \u0441\u0431\u043e\u0440\u0449\u0438\u043a\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445                  \u0422\u0438\u043f                           \u0421\u043e\u0441\u0442\u043e\u044f\u043d\u0438\u0435 ------------------------------------------------------------------------------- cpu                                     \u0421\u0447\u0435\u0442\u0447\u0438\u043a                       \u041e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d\u043e  \u041a\u043e\u043c\u0430\u043d\u0434\u0430 \u0432\u044b\u043f\u043e\u043b\u043d\u0435\u043d\u0430 \u0443\u0441\u043f\u0435\u0448\u043d\u043e. <\/code><\/pre>\n<h3>\u0421\u043e\u0437\u0434\u0430\u043d\u0438\u0435 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438<\/h3>\n<p>  \u0414\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0443\u044e \u043a\u043e\u043c\u0430\u043d\u0434\u0443 (\u0441 \u043f\u043e\u043b\u043d\u044b\u043c \u0441\u043f\u0438\u0441\u043a\u043e\u043c \u043e\u043f\u0446\u0438\u0439 \u043c\u043e\u0436\u043d\u043e \u043e\u0437\u043d\u0430\u043a\u043e\u043c\u0438\u0442\u044c\u0441\u044f \u0432 <a href=\"http:\/\/technet.microsoft.com\/en-us\/library\/bb490956.aspx\">\u043e\u0444\u0438\u0446\u0438\u0430\u043b\u044c\u043d\u043e\u0439 \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438<\/a>.):  <\/p>\n<pre><code class=\"dos\">logman create counter &quot;counter_name&quot; -f csv -si &quot;interval&quot; --v -o &quot;output_file&quot; -c counter <\/code><\/pre>\n<ul>\n<li>counter_name \u2014 \u0438\u043c\u044f \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430. \u041c\u043e\u0436\u0435\u0442 \u0431\u044b\u0442\u044c \u043b\u044e\u0431\u044b\u043c, \u043d\u0430\u043f\u0440\u0438\u043c\u0435\u0440 \u00abexplorer_cpu\u00bb<\/li>\n<li>-f \u2014 \u0444\u043e\u0440\u043c\u0430\u0442 \u0444\u0430\u0439\u043b\u0430 \u0441 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043c\u0438 \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u0439<\/li>\n<li>&#8212;v \u2014 \u044d\u0442\u0430 \u043e\u043f\u0446\u0438\u044f \u043f\u043e\u0434\u0430\u0432\u043b\u044f\u0435\u0442 \u0432\u044b\u0432\u043e\u0434 \u0432\u0435\u0440\u0441\u0438\u0438 \u0432 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u043c \u0444\u0430\u0439\u043b\u0435<\/li>\n<li>-si \u2014 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b. \u0441 \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u0431\u0443\u0434\u0443\u0442 \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c\u0441\u044f \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u044f<\/li>\n<li>-o \u2014 \u0444\u0430\u0439\u043b \u0441 \u0440\u0435\u0437\u0443\u043b\u044c\u0442\u0430\u0442\u0430\u043c\u0438 \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u0439<\/li>\n<li>-c \u2014 \u0438\u0434\u0435\u043d\u0442\u0438\u0444\u0438\u043a\u0430\u0442\u043e\u0440 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430 \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438<\/li>\n<\/ul>\n<p>  \u041e\u0441\u0442\u0430\u043d\u043e\u0432\u0438\u043c\u0441\u044f \u043f\u043e\u0434\u0440\u043e\u0431\u043d\u0435\u0435 \u043d\u0430 \u043f\u043e\u0441\u043b\u0435\u0434\u043d\u0435\u0439 \u043e\u043f\u0446\u0438\u0438. \u0427\u0442\u043e\u0431\u044b \u043f\u043e\u043d\u044f\u0442\u044c, \u0447\u0442\u043e \u0432\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0432 \u043f\u043e\u043b\u0435 \u00abcounter\u00bb, \u043c\u043e\u0436\u043d\u043e \u043f\u0440\u043e\u0441\u043b\u0435\u0434\u043e\u0432\u0430\u0442\u044c \u0432 perfmon, \u0441\u043e\u0437\u0434\u0430\u0442\u044c \u0433\u0440\u0443\u043f\u043f\u0443 \u0441\u0431\u043e\u0440\u0449\u0438\u043a\u043e\u0432 \u0434\u0430\u043d\u043d\u044b\u0445 \u0438 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u00ab\u0421\u043e\u0437\u0434\u0430\u0442\u044c -&gt; \u0421\u0431\u043e\u0440\u0449\u0438\u043a \u0434\u0430\u043d\u043d\u044b\u0445\u00bb. \u0414\u0430\u043b\u0435\u0435 \u0432\u044b\u0431\u0440\u0430\u0442\u044c \u00ab\u0414\u043e\u0431\u0430\u0432\u0438\u0442\u044c \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u00bb \u0438 \u0432 \u043f\u043e\u044f\u0432\u0438\u0432\u0448\u0435\u043c\u0441\u044f \u043e\u043a\u043d\u0435 \u043d\u0430\u0439\u0442\u0438 \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u0443\u044e\u0449\u0438\u0439 \u043d\u0430\u0441 \u0442\u0438\u043f \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430.<\/p>\n<p>  <img decoding=\"async\" src=\"http:\/\/habr.habrastorage.org\/post_images\/aae\/1d5\/dd4\/aae1d5dd49e4f326e39c0c64c9f57709.png\"\/><\/p>\n<p>  \u041c\u0435\u043d\u044f \u0438\u043d\u0442\u0435\u0440\u0435\u0441\u043e\u0432\u0430\u043b\u043e \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0435 cpu \u0438 \u043f\u0430\u043c\u044f\u0442\u0438 \u043a\u043e\u043d\u043a\u0440\u0435\u0442\u043d\u044b\u043c \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u043c, \u043f\u043e\u044d\u0442\u043e\u043c\u0443 \u044f \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043b \u0434\u043b\u044f \u0438\u0437\u043c\u0435\u0440\u0435\u043d\u0438\u0439 \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0435 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0438 (\u0432 \u0440\u0430\u0441\u0447\u0435\u0442\u0435 CPU \u043c\u043d\u0435 \u043f\u043e\u043c\u043e\u0433 <a href=\"http:\/\/social.technet.microsoft.com\/Forums\/en-US\/434b88e3-ee4b-4880-81f0-2e0f11c9f02a\/perfmon-logman-process-cpu-counter-higher-than-cpu-total?forum=perfmon\">\u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0438\u0439 \u043f\u043e\u0441\u0442<\/a>):<\/p>\n<ul>\n<li>&quot;\\Processor(_Total)\\% User time&quot; \u2014 \u043f\u0440\u043e\u0446\u0435\u043d\u0442 CPU \u0432 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u043c \u0440\u0435\u0436\u0438\u043c\u0435<\/li>\n<li>&quot;\\Process(application_name)\\% Processor time&quot; \u2014 \u0434\u043e\u043b\u044f CPU \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043e\u0442 \u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u0435\u043b\u044c\u0441\u043a\u043e\u0433\u043e \u0440\u0435\u0436\u0438\u043c\u0430<\/li>\n<li>&quot;\\Process(application_name)\\Working Set&quot; \u2014 \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u0435 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u043c<\/li>\n<\/ul>\n<p>  \u041f\u0440\u043e\u0446\u0435\u043d\u0442 \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u044f CPU \u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u043c \u043c\u043e\u0436\u043d\u043e \u0440\u0430\u0441\u0447\u0438\u0442\u0430\u0442\u044c \u043a\u0430\u043a (&quot;\\Processor(_Total)\\% User time&quot; * &quot;\\Process(application_name)\\% Processor time&quot;) \/ \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e_\u043f\u0440\u043e\u0446\u0435\u0441\u0441\u043e\u0440\u043e\u0432<\/p>\n<p>  \u0421\u0447\u0435\u0442\u0447\u0438\u043a\u0438 \u043c\u043e\u0436\u043d\u043e \u0437\u0430\u043f\u0438\u0441\u044b\u0432\u0430\u0442\u044c \u0447\u0435\u0440\u0435\u0437 \u043f\u0440\u043e\u0431\u0435\u043b, \u0442\u043e\u0433\u0434\u0430 \u0432 \u0432\u044b\u0445\u043e\u0434\u043d\u043e\u043c \u0444\u0430\u0439\u043b\u0435 \u0437\u043d\u0430\u0447\u0435\u043d\u0438\u044f \u0431\u0443\u0434\u0443\u0442 \u043a\u0430\u0436\u0434\u044b\u0439 \u0432 \u0441\u0432\u043e\u0435\u043c \u0441\u0442\u043e\u043b\u0431\u0446\u0435.<\/p>\n<p>  \u0412 \u0438\u0442\u043e\u0433\u0435 \u043f\u0440\u0438\u0432\u0435\u0434\u0443 \u043f\u0440\u0438\u043c\u0435\u0440 \u0433\u043e\u0442\u043e\u0432\u043e\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u044b \u0434\u043b\u044f \u0441\u043e\u0437\u0434\u0430\u043d\u0438\u044f \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430:<\/p>\n<pre><code class=\"dos\">logman create counter &quot;explorer-cpu.usage&quot; -f csv -si 1 --v -o &quot;d:\\logman-test\\raw\\explorer-cpu.usage.csv&quot; -c &quot;\\Processor(_Total)\\% User time&quot; &quot;\\Process(explorer)\\% Processor time&quot; <\/code><\/pre>\n<h3>\u0417\u0430\u043f\u0443\u0441\u043a \u0438 \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043a\u0430 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430<\/h3>\n<p>  \u0412\u044b\u043f\u043e\u043b\u043d\u044f\u044e\u0442\u0441\u044f \u0441\u043e\u043e\u0442\u0432\u0435\u0442\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u043c\u0438 \u043a\u043e\u043c\u0430\u043d\u0434\u0430\u043c\u0438:  <\/p>\n<pre><code class=\"dos\">logman start &quot;counter_name&quot; <\/code><\/pre>\n<p>  <\/p>\n<pre><code class=\"dos\">logman stop &quot;counter_name&quot; <\/code><\/pre>\n<h3>\u0423\u0434\u0430\u043b\u0435\u043d\u0438\u0435 \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u0430<\/h3>\n<p>  \u0423\u0434\u0430\u043b\u0438\u0442\u044c \u0441\u0447\u0435\u0442\u0447\u0438\u043a \u043c\u043e\u0436\u043d\u043e \u0441\u043b\u0435\u0434\u0443\u044e\u0449\u0435\u0439 \u043a\u043e\u043c\u0430\u043d\u0434\u043e\u0439 (\u043e\u043d \u043e\u0431\u044f\u0437\u0430\u0442\u0435\u043b\u044c\u043d\u043e \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u0442\u044c \u043f\u0435\u0440\u0435\u0434 \u044d\u0442\u0438\u043c \u043e\u0441\u0442\u0430\u043d\u043e\u0432\u043b\u0435\u043d):  <\/p>\n<pre><code class=\"dos\">logman delete &quot;counter_name&quot; <\/code><\/pre>\n<h1>\u041e\u0431\u0435\u0440\u0442\u043a\u0430 \u043d\u0430 Python<\/h1>\n<p>  \u041f\u0440\u0435\u0436\u0434\u0435 \u0447\u0435\u043c \u043f\u0435\u0440\u0435\u0439\u0442\u0438 \u043a \u043a\u043e\u0434\u0443, \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u0431\u044b \u0440\u0430\u0441\u0441\u043a\u0430\u0437\u0430\u0442\u044c \u043e \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 (\u0445\u043e\u0442\u044f \u0434\u043b\u044f \u043c\u0435\u043d\u044f \u043e\u043d\u0430 \u0441\u0442\u0430\u043b\u0430 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0435\u043d\u043d\u043e\u0439) \u043f\u0440\u043e\u0431\u043b\u0435\u043c\u0435, \u043a\u043e\u0442\u043e\u0440\u0430\u044f \u0432\u043e\u0437\u043d\u0438\u043a\u043b\u0430 \u0432 \u0445\u043e\u0434\u0435 \u0441\u0431\u043e\u0440\u0430 \u043c\u0435\u0442\u0440\u0438\u043a.<\/p>\n<p>  \u0422\u0430\u043a \u043a\u0430\u043a \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u0440\u0435\u0434\u043f\u043e\u043b\u0430\u0433\u0430\u043b\u043e\u0441\u044c \u0437\u0430 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u043e\u0439 \u043f\u0440\u043e\u043c\u0435\u0436\u0443\u0442\u043e\u043a \u0432\u0440\u0435\u043c\u0435\u043d\u0438 (5-15 \u0441\u0435\u043a\u0443\u043d\u0434), \u0442\u043e \u0441\u0442\u0430\u043b\u043e \u043f\u043e\u043d\u044f\u0442\u043d\u043e, \u0447\u0442\u043e \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u0441\u0431\u043e\u0440\u0430 \u0432 1 \u0441 (\u0437\u0430\u0434\u0430\u0432\u0430\u0435\u043c\u044b\u0439 \u0447\u0435\u0440\u0435\u0437 \u043e\u043f\u0446\u0438\u044e &quot;-si&quot;) \u0441\u043b\u0438\u0448\u043a\u043e\u043c \u0431\u043e\u043b\u044c\u0448\u043e\u0439. \u041f\u043e\u0438\u0441\u043a\u0430\u0432 \u043d\u0430 \u043f\u0440\u043e\u0441\u0442\u043e\u0440\u0430\u0445 \u0438\u043d\u0442\u0435\u0440\u043d\u0435\u0442\u0430 \u0438 \u0432 \u043e\u0444. \u0434\u043e\u043a\u0443\u043c\u0435\u043d\u0442\u0430\u0446\u0438\u0438, \u043c\u043d\u0435 \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043d\u0430\u0439\u0442\u0438 \u0441\u043f\u043e\u0441\u043e\u0431, \u043a\u043e\u0442\u043e\u0440\u044b\u043c \u044d\u0442\u043e\u0442 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b \u043c\u043e\u0436\u043d\u043e \u0431\u044b\u043b\u043e \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c, \u0430 \u043a\u043e\u043b\u0438\u0447\u0435\u0441\u0442\u0432\u043e \u043f\u043e\u043b\u0443\u0447\u0430\u0435\u043c\u044b\u0445 \u0442\u043e\u0447\u0435\u043a \u043d\u0430 \u0433\u0440\u0430\u0444\u0438\u043a\u0435 \u043e\u0447\u0435\u043d\u044c \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c. \u041d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u0440\u0430\u0437\u043c\u044b\u0441\u043b\u0438\u0432, \u044f \u0440\u0435\u0448\u0438\u043b \u043f\u043e\u0439\u0442\u0438 \u043e\u0442 \u043f\u0440\u043e\u0442\u0438\u0432\u043d\u043e\u0433\u043e \u2014 \u0435\u0441\u043b\u0438 \u043d\u0435\u043b\u044c\u0437\u044f \u0443\u043c\u0435\u043d\u044c\u0448\u0438\u0442\u044c \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b, \u0442\u043e \u043c\u043e\u0436\u043d\u043e \u0443\u0432\u0435\u043b\u0438\u0447\u0438\u0442\u044c \u043a\u043e\u043b\u0438\u0447\u0435\u0442\u0441\u0442\u0432\u043e \u0441\u0447\u0435\u0442\u0447\u0438\u043a\u043e\u0432. \u0422\u0430\u043a\u0438\u043c \u043e\u0431\u0440\u0430\u0437\u043e\u043c, \u0437\u0430\u043f\u0443\u0441\u043a\u0430\u044f \u043f\u043e\u0434\u0440\u044f\u0434 \u043d\u0435\u0441\u043a\u043e\u043b\u044c\u043a\u043e \u0441\u0431\u043e\u0440\u0449\u0438\u043a\u043e\u0432 \u0441 \u0438\u043d\u0442\u0435\u0440\u0432\u0430\u043b\u043e\u043c \u0432 100-500 \u043c\u0438\u043b\u043b\u0438\u0441\u0435\u043a\u0443\u043d\u0434, \u043c\u043e\u0436\u043d\u043e \u043f\u043e\u043b\u0443\u0447\u0438\u0442\u044c \u0437\u0430 \u043e\u0434\u043d\u0443 \u0441\u0435\u043a\u0443\u043d\u0434\u0443 \u0441\u043a\u043e\u043b\u044c\u043a\u043e \u043d\u0443\u0436\u043d\u043e \u0434\u0430\u043d\u043d\u044b\u0445.<\/p>\n<p>  \u041f\u0440\u043e\u0446\u0435\u0441\u0441 \u0441\u0431\u043e\u0440\u0430 \u0434\u0430\u043d\u043d\u044b\u0445 \u0434\u043e\u043b\u0436\u0435\u043d \u0431\u044b\u043b \u0431\u044b\u0442\u044c \u0438\u043d\u0442\u0435\u0433\u0440\u0438\u0440\u043e\u0432\u0430\u043d \u0432 \u0441\u0443\u0449\u0435\u0441\u0442\u0432\u0443\u044e\u0449\u0438\u0439 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0447\u0435\u0441\u043a\u0438\u0439 \u0442\u0435\u0441\u0442 \u0438 \u0432 \u043a\u043e\u043d\u0435\u0447\u043d\u043e\u043c \u0431\u044b\u043b\u0430 \u043d\u0430\u043f\u0438\u0441\u0430\u043d\u0430 \u043d\u0435\u0431\u043e\u043b\u044c\u0448\u0430\u044f \u0432\u0441\u043f\u043e\u043c\u043e\u0433\u0430\u0442\u0435\u043b\u044c\u043d\u0430\u044f \u043e\u0431\u0435\u0440\u0442\u043a\u0430 \u0434\u043b\u044f \u0432\u044b\u043f\u043e\u043b\u0435\u043d\u0438\u044f \u0432\u0441\u0435\u0445 \u0432\u044b\u0448\u0435\u0443\u043a\u0430\u0437\u0430\u043d\u043d\u044b\u0445 \u0434\u0435\u0439\u0441\u0442\u0432\u0438\u0439. <\/p>\n<p>  \u041d\u0438\u0436\u0435 \u043f\u0440\u0435\u0434\u0441\u0442\u0430\u0432\u043b\u0435\u043d \u0438\u0441\u0445\u043e\u0434\u043d\u044b\u0439 \u043a\u043e\u0434 \u043c\u043e\u0434\u0443\u043b\u044f, \u0441\u043e\u0431\u0438\u0440\u0430\u044e\u0449\u0438\u0439 \u0434\u0430\u043d\u043d\u044b\u0435 \u043f\u043e CPU \u0438 \u043e\u043f\u0435\u0440\u0430\u0442\u0438\u0432\u043d\u043e\u0439 \u043f\u0430\u043c\u044f\u0442\u0438 \u0434\u043b\u044f \u0443\u043a\u0430\u0437\u0430\u043d\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u0441 \u0442\u0440\u0435\u0431\u0443\u0435\u043c\u043e\u0439 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u044c\u044e.<\/p>\n<div class=\"spoiler\"><b class=\"spoiler_title\">pylogman.py<\/b><\/p>\n<div class=\"spoiler_text\">\n<pre><code>import os import logging import random import time import subprocess import glob import multiprocessing   CPU_USER_COUNTER = '&quot;\\Processor(_Total)\\% User time&quot;' CPU_APP_COUNTER = '&quot;\\Process({app})\\% Processor time&quot;' MEMORY_COUNTER = '&quot;\\Process({app})\\Working Set&quot;' APP_PLACEHOLDER = '{app}'   class PerflogManager(object):      def __init__(self, app_name, precision, results_dir, max_mem=1, interval=1):         &quot;&quot;&quot;         Args:             app_name: name of the application without &quot;exe&quot; extention             precision: amount of             results_dir: output folder             max_mem: this value is used to calculate % from total avaliable memory for further plotting             interval: interval which will be used as &quot;-si&quot; logman option value         &quot;&quot;&quot;          self._app_name = app_name         self._precision = precision         self._counters = { 'cpu.usage': '{cpu_user} {cpu_app}'.format(cpu_user=CPU_USER_COUNTER,                                                                       cpu_app=CPU_APP_COUNTER).replace(APP_PLACEHOLDER, app_name),                            'mem.usage': MEMORY_COUNTER.replace(APP_PLACEHOLDER, app_name) }         self._results_dir = os.path.normpath(results_dir)         self._raw_dir = os.path.join(self._results_dir, 'raw')         self._final_dir = os.path.join(self._results_dir, 'csv')         self._interval = interval         self._max_mem = max_mem         self._collectors = []         if not os.path.exists(self._results_dir):             os.makedirs(self._results_dir)             os.makedirs(self._raw_dir)             os.makedirs(self._final_dir)             logging.info('Directory &quot;{path}&quot; for logman results has been created.'.format(path=self._results_dir))         logging.info('Performance logman manager has been created for &quot;{}&quot; application.'.format(self._app_name))       def init_collectors(self):         &quot;&quot;&quot;         Creates collectors by &quot;logman create&quot; command         &quot;&quot;&quot;          logging.info('Creating collectors set...')         for lang in self._counters:             for idx in range(self._precision):                 collector = '{app}-{collector}-{id}'.format(app=self._app_name,                                                             collector=lang,                                                             id=idx)                 output = os.path.join(self._raw_dir, collector + '.csv')                 self.__create(collector, self._counters[lang], output)                 self._collectors.append(collector)       def start_all(self):         &quot;&quot;&quot;         Starts all the collectors from self._collectors list         &quot;&quot;&quot;          for collector in self._collectors:             self.__start(collector)             time.sleep(random.uniform(0.1, 0.9))       def stop_all(self):         &quot;&quot;&quot;         Stops and deletes all initiated collectors from self._collectors list         &quot;&quot;&quot;          for collector in self._collectors:             self.__stop(collector)             self.__delete(collector)       def cleanup(self):         &quot;&quot;&quot;         Cleans raw_dir directory which contains unprocessed csv file from logman         &quot;&quot;&quot;         logging.info('Cleaning results directory from unnecessary files.')         for collector in self._collectors:             csv = os.path.join(self._raw_dir, '{}.csv'.format(collector))             if os.path.isfile(csv):                 os.remove(csv)       def process_csv(self):         &quot;&quot;&quot;         Composes and formats data from all counters for further plotting         &quot;&quot;&quot;          for lang in self._counters:             final_output = os.path.join(self._final_dir, '{}.csv'.format(lang))             self.__compose_csv(final_output, lang)             self.__format_data(final_output)       def __compose_csv(self, output, counter):         &quot;&quot;&quot;         Concatenates gathered csv data to one file         &quot;&quot;&quot;          logging.info('Composing file &quot;{}&quot;.'.format(output))         try:             with open(output, 'a') as outfile:                 for csv in glob.glob(os.path.join(self._raw_dir, '*{}*'.format(counter))):                      with open(csv, 'r') as file:                         outfile.writelines(file.readlines()[1:]) # Get rid of a file header with service info             logging.info('File {} successfully created.'.format(output))         except (FileNotFoundError, IOError) as e:             logging.error('Failed to compose file {file}: {exception}'.format(file=output,                                                                               exception=e))       def __format_data(self, file):         &quot;&quot;&quot;         Sorts data after self.__compose_csv function and calculates % of CPU and Memory         &quot;&quot;&quot;          try:             with open(file, 'r') as csv:                 raw_data = csv.readlines()             with open(file, 'w') as csv:                 sorted_data = [line.replace('&quot;', '').replace(',', ';')                             for line in sorted(raw_data)                             if '&quot; &quot;' not in line]                 csv_data = []                 if 'cpu' in file:                     for line in sorted_data:                         time, cpu_user, cpu_app = line.split(';')                         cpu = (float(cpu_user) * float(cpu_app)) \/ (multiprocessing.cpu_count() * 100)                         csv_data.append('{};{:.2f}\\n'.format(time, cpu))                 if 'mem' in file:                     for line in sorted_data:                         time, total_memory = line.split(';')                         mem = float(total_memory) \/ (self._max_mem * 10000)                         csv_data.append('{};{:.2f}\\n'.format(time, mem))                 csv.writelines(csv_data)         except (FileNotFoundError, IOError) as e:             logging.error('Failed to process file &quot;{file}&quot;: {exception}'.format(file=file,                                                                                 exception=e))       def __logman(self, cmd):         &quot;&quot;&quot;         Default wrapper for logman commands          Args:             cmd: windows command to be executed         &quot;&quot;&quot;          try:             logging.debug('Running {}'.format(cmd))             subprocess.check_call(cmd)         except (subprocess.CalledProcessError, OSError) as e:             logging.error('Failed to execute command &quot;{}&quot;: {}.'.format(cmd, e))       def __create(self, name, counter, output):         &quot;&quot;&quot;         Creates logman counter          Args:             name: uniq name of a collector             counter: type of the counter (can be taken from perfmon)             output: csv file for results         &quot;&quot;&quot;          logging.info('Creating collector &quot;{}&quot;'.format(name))         cmd = 'logman create counter &quot;{name}&quot; -f csv -si {interval} ' \\               '--v -o &quot;{output}&quot; -c {counter}'.format(name=name,                                                       interval=str(self._interval),                                                       output=output,                                                       counter=counter)         self.__logman(cmd)       def __start(self, name):         &quot;&quot;&quot;         Starts logman collector          Args:             name: uniq name of a collector         &quot;&quot;&quot;          logging.info('Starting collector &quot;{}&quot;.'.format(name))         cmd = 'logman start {}'.format(name)         self.__logman(cmd)       def __stop(self, name):         &quot;&quot;&quot;         Stops logman collector          Args:             name: uniq name of a collector         &quot;&quot;&quot;          logging.info('Stopping collector &quot;{}&quot;.'.format(name))         cmd = 'logman stop {}'.format(name)         self.__logman(cmd)       def __delete(self, name):         &quot;&quot;&quot;         Deletes logman collector          Args:             name: uniq name of a collector         &quot;&quot;&quot;          logging.info('Deleting collector &quot;{}&quot;.'.format(name))         cmd = 'logman delete {}'.format(name)         self.__logman(cmd)   if __name__ == '__main__':     logging.basicConfig(level=logging.DEBUG)     app = 'skype'     start_time = time.strftime('%Y%m%d-%H%M%S', time.gmtime())     logman = PerflogManager(app, 3, 'd:\/logman-test\/')     logman.init_collectors()     logman.start_all()     time.sleep(20)     logman.stop_all()     logman.process_csv() <\/code><\/pre>\n<p>  <\/div>\n<\/div>\n<h1>\u0417\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0435<\/h1>\n<p>  \u0412 \u0437\u0430\u043a\u043b\u044e\u0447\u0435\u043d\u0438\u0438 \u0445\u043e\u0442\u0435\u043b\u043e\u0441\u044c \u0431\u044b \u0441\u043a\u0430\u0437\u0430\u0442\u044c, \u0447\u0442\u043e logman \u2014 \u0434\u043e\u0432\u043e\u043b\u044c\u043d\u043e \u043f\u043e\u043b\u0435\u0437\u043d\u0430\u044f \u0443\u0442\u0438\u043b\u0438\u0442\u0430, \u0435\u0441\u043b\u0438 \u043d\u0435\u0431\u0445\u043e\u0434\u0438\u043c\u043e \u0441 \u043c\u0438\u043d\u0438\u043c\u0430\u043b\u044c\u043d\u044b\u043c\u0438 \u0437\u0430\u0442\u0440\u0430\u0442\u0430\u043c\u0438 \u0430\u0432\u0442\u043e\u043c\u0430\u0442\u0438\u0437\u0438\u0440\u043e\u0432\u0430\u0442\u044c \u0441\u0431\u043e\u0440 \u043c\u0435\u0442\u0440\u0438\u043a \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u043f\u043e\u0434 Windows. \u0412 \u0441\u0436\u0430\u0442\u044b\u0435 \u0441\u0440\u043e\u043a\u0438 \u043c\u043d\u0435 \u043d\u0435 \u0443\u0434\u0430\u043b\u043e\u0441\u044c \u043d\u0430\u0439\u0442\u0438 \u0431\u043e\u043b\u0435\u0435 \u0443\u0434\u043e\u0431\u043d\u043e\u0433\u043e \u0441\u043f\u043e\u0441\u043e\u0431\u0430, \u0442\u0430\u043a \u0447\u0442\u043e \u0431\u0443\u0434\u0443 \u0440\u0430\u0434 \u0443\u0437\u043d\u0430\u0442\u044c \u043e \u0434\u0440\u0443\u0433\u0438\u0445 \u043f\u0443\u0442\u044f\u0445 \u0438 \u043f\u043e\u0434\u0445\u043e\u0434\u0430\u0445 \u0432 \u0440\u0435\u0448\u0435\u043d\u0438\u0438 \u0442\u0430\u043a\u043e\u0433\u043e \u0440\u043e\u0434\u0430 \u0437\u0430\u0434\u0430\u0447 \u0432 \u043a\u043e\u043c\u043c\u0435\u043d\u0442\u0430\u0440\u0438\u044f\u0445. \t\t\t<\/p>\n<div class=\"clear\"><\/div>\n<\/p><\/div>\n<p> \u0441\u0441\u044b\u043b\u043a\u0430 \u043d\u0430 \u043e\u0440\u0438\u0433\u0438\u043d\u0430\u043b \u0441\u0442\u0430\u0442\u044c\u0438 <a href=\"http:\/\/habrahabr.ru\/post\/203692\/\"> http:\/\/habrahabr.ru\/post\/203692\/<\/a><\/p>\n","protected":false},"excerpt":{"rendered":"<div class=\"content html_format\">\n<h1>\u0412\u0432\u0435\u0434\u0435\u043d\u0438\u0435<\/h1>\n<p>  \u0414\u043e\u0431\u0440\u044b\u0439 \u0434\u0435\u043d\u044c!<\/p>\n<p>  \u0412 \u0441\u0432\u043e\u0435\u043c \u043f\u0435\u0440\u0432\u043e\u043c \u043f\u043e\u0441\u0442\u0435 \u044f \u0445\u043e\u0442\u0435\u043b \u0431\u044b \u043f\u043e\u0434\u0435\u043b\u0438\u0442\u044cc\u044f \u043e\u043f\u044b\u0442\u043e\u043c \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u043d\u0438\u044f \u0442\u0430\u043a\u043e\u0439 \u0443\u0442\u0438\u043b\u0438\u0442\u044b \u043a\u0430\u043a <b>logman<\/b>, \u0441 \u043f\u043e\u043c\u043e\u0449\u044c\u044e \u043a\u043e\u0442\u043e\u0440\u043e\u0439 \u043c\u043e\u0436\u043d\u043e \u0441\u043e\u0431\u0438\u0440\u0430\u0442\u044c \u0438\u043d\u0444\u043e\u0440\u043c\u0430\u0446\u0438\u044e \u043e \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u0438 \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 (\u0438 \u043d\u0435 \u0442\u043e\u043b\u044c\u043a\u043e) \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c \u043f\u043e\u0434 Windows.<\/p>\n<p>  \u0412 \u043e\u0434\u0438\u043d \u0438\u0437 \u0434\u043d\u0435\u0439 \u043d\u0430 \u0440\u0430\u0431\u043e\u0442\u0435 \u0431\u044b\u043b\u0430 \u043f\u043e\u0441\u0442\u0430\u0432\u043b\u0435\u043d\u0430 \u0437\u0430\u0434\u0430\u0447\u0430 \u0441\u043d\u044f\u0442\u0438\u044f \u043c\u0435\u0442\u0440\u0438\u043a \u043f\u0440\u043e\u0438\u0437\u0432\u043e\u0434\u0438\u0442\u0435\u043b\u044c\u043d\u043e\u0441\u0442\u0438 \u0434\u043b\u044f \u043e\u0434\u043d\u043e\u0433\u043e \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u044f \u043f\u043e\u0434 Windows. \u0413\u043b\u0430\u0432\u043d\u044b\u043c \u0443\u0441\u043b\u043e\u0432\u0438\u0435\u043c \u0431\u044b\u043b\u043e \u0438\u0441\u043f\u043e\u043b\u044c\u0437\u043e\u0432\u0430\u0442\u044c \u043f\u043e \u043c\u0438\u043d\u0438\u043c\u0443\u043c\u0443 \u043a\u0430\u043a\u0438\u0435-\u043b\u0438\u0431\u043e \u0441\u0442\u043e\u0440\u043e\u043d\u043d\u0438\u0435 \u0443\u0442\u0438\u043b\u0438\u0442\u044b, \u0438 \u0442\u0430\u043a \u043a\u0430\u043a \u043e\u043f\u044b\u0442\u0430 \u0432 \u043f\u043e\u0434\u043e\u0431\u043d\u044b\u0445 \u0432\u0435\u0449\u0430\u0445 \u0443 \u043c\u0435\u043d\u044f \u043a \u0442\u043e\u043c\u0443 \u0432\u0440\u0435\u043c\u0435\u043d\u0438 \u043d\u0435 \u0431\u044b\u043b\u043e, \u043d\u0435\u043c\u043d\u043e\u0433\u043e \u043f\u043e\u043a\u043e\u043f\u0430\u0432\u0448\u0438\u0441\u044c, \u0432\u044b\u0431\u043e\u0440 \u043f\u0430\u043b \u043d\u0430 logman. \u041e\u0441\u043e\u0431\u043e\u0439 \u0442\u043e\u0447\u043d\u043e\u0441\u0442\u0438 \u043d\u0435 \u0442\u0440\u0435\u0431\u043e\u0432\u0430\u043b\u043e\u0441\u044c \u0438 \u043d\u0430\u0434\u043e \u0431\u044b\u043b\u043e \u043b\u0438\u0448\u044c \u043f\u043e\u043d\u044f\u0442\u044c \u0445\u0430\u0440\u0430\u043a\u0442\u0435\u0440 \u043f\u043e\u0442\u0440\u0435\u0431\u043b\u0435\u043d\u0438\u044f \u0440\u0435\u0441\u0443\u0440\u0441\u043e\u0432 \u043f\u0440\u0438\u043b\u043e\u0436\u0435\u043d\u0438\u0435\u043c, \u0434\u043b\u044f \u0447\u0435\u0433\u043e logman \u0441 \u043f\u0435\u0440\u0432\u043e\u0433\u043e \u0432\u0437\u0433\u043b\u044f\u0434\u0430 \u0432\u043f\u043e\u043b\u043d\u0435 \u043f\u043e\u0434\u0445\u043e\u0434\u0438\u043b.<\/p>\n<p>  \u0418\u0442\u0430\u043a, \u043f\u0435\u0440\u0435\u0439\u0434\u0435\u043c \u043d\u0435\u043f\u043e\u0441\u0440\u0435\u0434\u0441\u0442\u0432\u0435\u043d\u043d\u043e \u043a \u0441\u0443\u0442\u0438 \u043f\u043e\u0441\u0442\u0430.  <\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[],"tags":[],"class_list":["post-203692","post","type-post","status-publish","format-standard","hentry"],"_links":{"self":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/203692","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=203692"}],"version-history":[{"count":0,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=\/wp\/v2\/posts\/203692\/revisions"}],"wp:attachment":[{"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=203692"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=203692"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/savepearlharbor.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=203692"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}