<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>counter | DBA von Nebenan</title>
	<atom:link href="https://dbavonnebenan.de/tag/counter/feed/" rel="self" type="application/rss+xml" />
	<link>https://dbavonnebenan.de</link>
	<description>Sql Server, Performance &#38; PowerShell Automation</description>
	<lastBuildDate>Sat, 11 Oct 2025 18:28:31 +0000</lastBuildDate>
	<language>de</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://dbavonnebenan.de/wp-content/uploads/2025/04/cropped-www_logo-32x32.png</url>
	<title>counter | DBA von Nebenan</title>
	<link>https://dbavonnebenan.de</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>psTerminalPerfCounter – SpeedUp your Performance Counters in Terminal</title>
		<link>https://dbavonnebenan.de/psterminalperfcounter-speedup-your-performance-counters_en/</link>
					<comments>https://dbavonnebenan.de/psterminalperfcounter-speedup-your-performance-counters_en/#respond</comments>
		
		<dc:creator><![CDATA[Gabriel]]></dc:creator>
		<pubDate>Sat, 26 Jul 2025 16:07:18 +0000</pubDate>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[counter]]></category>
		<category><![CDATA[eng]]></category>
		<category><![CDATA[PERFORMANCE]]></category>
		<category><![CDATA[TERMINAL]]></category>
		<guid isPermaLink="false">https://dbavonnebenan.de/?p=618</guid>

					<description><![CDATA[<p>Visualize Windows Performance Counters directly in terminal with psTerminalPerfCounter. Language-independent templates, maximum customization. Perfect for quick AdHoc monitoring.</p>
<p>The post <a href="https://dbavonnebenan.de/psterminalperfcounter-speedup-your-performance-counters_en/">psTerminalPerfCounter – SpeedUp your Performance Counters in Terminal</a> first appeared on <a href="https://dbavonnebenan.de">DBA von Nebenan</a>.</p>]]></description>
										<content:encoded><![CDATA[<h2 class="wp-block-heading">Current Release ( 2025-10-11 )</h2>



<div style="height:13px" aria-hidden="true" class="wp-block-spacer"></div>


https://www.powershellgallery.com/packages/psTerminalPerfCounter/0.2.0


<ul class="wp-block-list">
<li><a href="https://github.com/gabrielkoehl/psTerminalPerfCounter/blob/main/CHANGELOG.md" target="_blank" rel="noopener" title="Changelog ">Changelog</a></li>



<li><a href="https://github.com/gabrielkoehl/psTerminalPerfCounter/tree/main?tab=readme-ov-file#documentation" target="_blank" rel="noopener" title="Documentation">Documentation</a></li>
</ul>



<div style="height:27px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading" style="margin-bottom:var(--wp--preset--spacing--50)">Intro</h2>



<p>Windows Performance Counters are absolutely powerful, but when I need something quick or monitoring tailored to a specific problem, I get frustrated fast. Usually I fall back on other options &#8211; PowerShell native Get-Counter, CIM, or existing monitoring solutions at my clients. But that&#8217;s never truly ad-hoc either, and I&#8217;ve accepted it.</p>



<p>Recently I had the chance to join Uwe Ricken&#8217;s Performance Tuning Workshop at DataSaturday, and he clearly named Performance Counters as a must-have in every DBA&#8217;s toolkit. What I didn&#8217;t know until then: SQL Server creates individual counters like <strong>Compile/sec</strong>, <strong>AdHoc Queries/sec</strong>, etc.</p>



<figure class="wp-block-image aligncenter size-full is-resized is-style-default" style="margin-top:var(--wp--preset--spacing--60);margin-bottom:var(--wp--preset--spacing--60)"><img decoding="async" width="500" height="54" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/mindblowing.png" alt="MINDBLOWING" class="wp-image-608" style="width:500px;height:auto" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/mindblowing.png 500w, https://dbavonnebenan.de/wp-content/uploads/2025/07/mindblowing-300x32.png 300w" sizes="(max-width: 500px) 100vw, 500px" /></figure>



<p>The possibilities to visualize dependencies directly &#8211; endless. But how long should I sit there configuring that in Windows Performance Monitor, especially ad-hoc at a client site?</p>



<p>Uwe showed the capabilities in Windows Admin Center, which enables templates you can use flexibly across servers. For systems or environments where Admin Center is used strategically, definitely a great choice.<br>But two problems remain: As a consultant, I can&#8217;t install software at every client, and if Admin Center happens to be running, my English templates fail on German systems.</p>



<p>Still, I was so incredibly hooked by the template idea and the SQL Server possibilities that 4 weeks of after-work crunchtime were spinning in my head. So let me introduce my first module in the PowerShell Gallery:</p>



<p style="margin-bottom:var(--wp--preset--spacing--50)"><strong>psTerminalPerfCounter 0.1.0-preview</strong> A PowerShell module for displaying real-time graphs of Windows Performance Counters directly in the terminal console. This module provides an easy way to visualize system performance metrics without requiring external graphing tools or GUI applications by using templates and multilanguage support.</p>


https://www.powershellgallery.com/packages/psTerminalPerfCounter/0.1.0-preview


<p style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">You&#8217;ll find all technical details and development status in the repository &#8211; I just want to show the different possibilities here.</p>



<div style="height:30px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Main Features</h2>



<h3 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">100% PowerShell</h3>



<ul class="wp-block-list">
<li>no external dependencies</li>
</ul>



<h3 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Terminal Graphics</h3>



<ul class="wp-block-list">
<li>obviously it&#8217;s not a real engine, the more counters the choppier it gets, but it&#8217;s sufficient</li>



<li>The foundation comes from <a href="https://github.com/PrateekKumarSingh/Graphical" target="_blank" rel="noopener" title="">Prateek Singh</a> solution. Without finding this, I would have had to solve this problem first, for which I probably wouldn&#8217;t have had time. THANKS!!!</li>
</ul>



<figure class="wp-block-image aligncenter size-full is-resized" style="margin-top:var(--wp--preset--spacing--40);margin-bottom:var(--wp--preset--spacing--40)"><img fetchpriority="high" decoding="async" width="632" height="757" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_example_cpu.png" alt="" class="wp-image-609" style="width:383px;height:auto" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_example_cpu.png 632w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_example_cpu-250x300.png 250w" sizes="(max-width: 632px) 100vw, 632px" /></figure>



<h3 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Configuration Templates</h3>



<ul class="wp-block-list">
<li>every output element is controlled via configuration files</li>



<li>flexible, portable</li>
</ul>



<h3 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Data Output Customization</h3>



<ul class="wp-block-list">
<li>each counter in the configuration file can use its own output
<ul class="wp-block-list">
<li>Table, Graph, or Both</li>
</ul>
</li>



<li>arbitrary axis scaling in steps and max values</li>



<li>arbitrary value coloring based on user-defined ColorMap per counter</li>



<li>value conversion via configuration file (Byte -&gt; KB -&gt; MB -&gt; GB)</li>
</ul>



<h3 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Language Independent</h3>



<ul class="wp-block-list">
<li>configuration files are based on counter IDs, not paths 
<ul class="wp-block-list">
<li>portable, regardless of system language translation from ID to counter path happens at runtime </li>



<li>no external dependencies</li>
</ul>
</li>



<li>I had no idea this was possible with Windows built-in tools. Here too I stumbled across a blog at <a href="https://powershell.one/tricks/performance/performance-counters" target="_blank" rel="noopener" title="">PowerShell.ONE</a> by chance. Again, a big THANKS!!! My original solution had multiple language variants (DE, EN, FR, ES) which would be set by reading system locale.</li>
</ul>



<div style="height:30px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Demo with CPU Configuration</h2>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: powershell; title: ; notranslate">
# Install module with required dependency (GripDevJsonSchemaValidator)
Install-Module -Name psTerminalPerfCounter -AllowPrerelease

# Import the module
Import-Module psTerminalPerfCounter

# Start Default Cpu Configuration
Start-tpcMonitor -ConfigName CPU
</pre></div>


<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-51c0b34d wp-block-columns-is-layout-flex" style="padding-top:var(--wp--preset--spacing--50);padding-bottom:var(--wp--preset--spacing--50)">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<figure class="wp-block-image aligncenter size-full is-resized"><img decoding="async" width="552" height="110" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_load.png" alt="" class="wp-image-610" style="width:622px;height:auto" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_load.png 552w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_load-300x60.png 300w" sizes="(max-width: 552px) 100vw, 552px" /></figure>
</div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%">
<p>When loading the configuration, counter IDs are translated to counter paths and tested</p>
</div>
</div>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-0884d4d2 wp-block-columns-is-layout-flex" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<figure class="wp-block-image aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="613" height="155" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_sample.png" alt="" class="wp-image-611" style="width:629px;height:auto" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_sample.png 613w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_sample-300x76.png 300w" sizes="auto, (max-width: 613px) 100vw, 613px" /></figure>
</div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%">
<p>If successful, the first samples are collected so a graph can be displayed</p>
</div>
</div>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-e242d015 wp-block-columns-is-layout-flex" style="padding-top:var(--wp--preset--spacing--50);padding-right:0;padding-bottom:var(--wp--preset--spacing--50);padding-left:0">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="767" height="774" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_run.png" alt="" class="wp-image-612" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_run.png 767w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_run-297x300.png 297w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_run-150x150.png 150w" sizes="auto, (max-width: 767px) 100vw, 767px" /></figure>
</div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%">
<p>Thats IT! </p>



<p>Within 10 seconds, 2 Performance Counters running, no installation, no language issues.</p>
</div>
</div>



<div style="height:30px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Demo Counter Translation</h2>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: powershell; title: ; notranslate">
# Translate ID -&gt; Path
Get-tpcPerformanceCounterInfo 238-6
</pre></div>


<figure class="wp-block-image aligncenter size-full" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)"><img loading="lazy" decoding="async" width="711" height="148" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_id.png" alt="" class="wp-image-613" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_id.png 711w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_id-300x62.png 300w" sizes="auto, (max-width: 711px) 100vw, 711px" /></figure>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: powershell; title: ; notranslate">
# Search Counter -&gt; Including ID
Get-tpcPerformanceCounterInfo &quot;Queue&quot;
</pre></div>


<figure class="wp-block-image aligncenter size-full" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:0"><img loading="lazy" decoding="async" width="1013" height="600" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_search1.png" alt="" class="wp-image-614" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_search1.png 1013w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_search1-300x178.png 300w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_search1-768x455.png 768w" sizes="auto, (max-width: 1013px) 100vw, 1013px" /></figure>



<p class="has-contrast-color has-text-color has-link-color wp-elements-dedb5f3a2a3a9c6525f87d44e77731d7" style="margin-bottom:var(--wp--preset--spacing--50)"><em>Output is heavily truncated since the ResultSet is enormous</em></p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: powershell; title: ; notranslate">
# Search Counter -&gt; Including ID
Get-tpcPerformanceCounterInfo &quot;Processor Queue&quot;
</pre></div>


<figure class="wp-block-image aligncenter size-full" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)"><img loading="lazy" decoding="async" width="675" height="79" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_search2.png" alt="" class="wp-image-615" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_search2.png 675w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_search2-300x35.png 300w" sizes="auto, (max-width: 675px) 100vw, 675px" /></figure>



<div style="height:30px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)"><strong>What&#8217;s next?</strong></h2>



<p>The foundation works, the planned feature list is long, and what I really need for SQL Server is still far off. I hope I haven&#8217;t solved a problem that doesn&#8217;t exist, but this module simply addresses all the issues I&#8217;ve always had with Performance Counters, as mentioned above.</p>



<p>Furthermore, this is my first larger project that I&#8217;m developing publicly, so GitHub might not always meet expected standards. I&#8217;m always happy about feedback and suggestions.</p>



<figure class="wp-block-image aligncenter size-full is-resized" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)"><img loading="lazy" decoding="async" width="246" height="470" src="https://dbavonnebenan.de/wp-content/uploads/2025/05/emotes_standing_1.png" alt="happy" class="wp-image-330" style="width:125px;height:auto" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/05/emotes_standing_1.png 246w, https://dbavonnebenan.de/wp-content/uploads/2025/05/emotes_standing_1-157x300.png 157w" sizes="auto, (max-width: 246px) 100vw, 246px" /></figure>


https://github.com/gabrielkoehl/psTerminalPerfCounter<p>The post <a href="https://dbavonnebenan.de/psterminalperfcounter-speedup-your-performance-counters_en/">psTerminalPerfCounter – SpeedUp your Performance Counters in Terminal</a> first appeared on <a href="https://dbavonnebenan.de">DBA von Nebenan</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://dbavonnebenan.de/psterminalperfcounter-speedup-your-performance-counters_en/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>psTerminalPerfCounter &#8211; SpeedUp your Performance Counters in Terminal</title>
		<link>https://dbavonnebenan.de/psterminalperfcounter-speedup-your-performance-counters_de/</link>
					<comments>https://dbavonnebenan.de/psterminalperfcounter-speedup-your-performance-counters_de/#respond</comments>
		
		<dc:creator><![CDATA[Gabriel]]></dc:creator>
		<pubDate>Sat, 26 Jul 2025 15:53:33 +0000</pubDate>
				<category><![CDATA[PowerShell]]></category>
		<category><![CDATA[CONSOLE]]></category>
		<category><![CDATA[counter]]></category>
		<category><![CDATA[DE]]></category>
		<category><![CDATA[PERFORMANCE]]></category>
		<category><![CDATA[TERMINAL]]></category>
		<guid isPermaLink="false">https://dbavonnebenan.de/?p=605</guid>

					<description><![CDATA[<p>Visualisiere Windows Performance Counter direkt im Terminal mit psTerminalPerfCounter. Sprachunabhängige Templates, maximale Anpassbarkeit. Perfekt für schnelles AdHoc-Monitoring.</p>
<p>The post <a href="https://dbavonnebenan.de/psterminalperfcounter-speedup-your-performance-counters_de/">psTerminalPerfCounter – SpeedUp your Performance Counters in Terminal</a> first appeared on <a href="https://dbavonnebenan.de">DBA von Nebenan</a>.</p>]]></description>
										<content:encoded><![CDATA[<h2 class="wp-block-heading">Current Release ( 2025-10-11 )</h2>



<div style="height:13px" aria-hidden="true" class="wp-block-spacer"></div>


https://www.powershellgallery.com/packages/psTerminalPerfCounter/0.2.0


<ul class="wp-block-list">
<li><a href="https://github.com/gabrielkoehl/psTerminalPerfCounter/blob/main/CHANGELOG.md" target="_blank" rel="noopener" title="Changelog ">Changelog</a></li>



<li><a href="https://github.com/gabrielkoehl/psTerminalPerfCounter/tree/main?tab=readme-ov-file#documentation" target="_blank" rel="noopener" title="Documentation">Documentation</a></li>
</ul>



<div style="height:13px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading" style="margin-bottom:var(--wp--preset--spacing--50)">Intro</h2>



<p>Die Windows Performance Counter sind absolut mächtig, aber wenn es mal schnell gehen muss oder ich genau passend zu einem Problem ein Monitoring benötige, bin ich schnell genervt. Meistens nutze ich dann doch andere Möglichkeiten, PowerShell Native Get-Counter, CIM oder greife auf vorhandene Monitoring-Lösungen bei meinen Kunden zurück. Aber auch das geht nie AdHoc aber ich habe es akzeptiert.</p>



<p>Nun habe ich beim letzten DataSaturday Uwe Ricken beim Performance Tuning Workshop begleiten dürfen und auch er hat die Performance Counter noch mal klar als Musthave im Werkzeugkoffer eines jeden DBA benannt. Was mir bis dahin nicht bewusst war: SQL Server legt individuelle Counter wie <strong>Compile/sec</strong>, <strong>AdHoc Queries/sec</strong> usw. an.</p>



<figure class="wp-block-image aligncenter size-full is-resized is-style-default" style="margin-top:var(--wp--preset--spacing--60);margin-bottom:var(--wp--preset--spacing--60)"><img loading="lazy" decoding="async" width="500" height="54" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/mindblowing.png" alt="MINDBLOWING" class="wp-image-608" style="width:500px;height:auto" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/mindblowing.png 500w, https://dbavonnebenan.de/wp-content/uploads/2025/07/mindblowing-300x32.png 300w" sizes="auto, (max-width: 500px) 100vw, 500px" /></figure>



<p>Die Möglichkeiten, Abhängigkeiten direkt zu visualisieren &#8211; endlos. Aber wie lange soll ich da sitzen, bis ich das im Windows Performance Monitor abgebildet habe, am besten Adhoc bei einem Kunden? </p>



<p>Uwe zeigte die Möglichkeiten im <strong>Windows Admin Center</strong> auf, welches Templates ermöglicht, die man flexibel auf Servern nutzen kann. Für System oder Umgebungen, in denen das Admin Center strategisch genutzt wird, definitiv eine sehr gut Wahl.</p>



<p>Aber zwei Probleme bleiben: Als Berater kann ich nicht bei jedem Kunden erst Software installieren und wenn das Admin Center doch läuft, scheitern meine englischen Templates an deutschen Systemen.</p>



<p style="margin-bottom:var(--wp--preset--spacing--50)">Nun war ich trotzdem so unglaublich angefixt von der Template-Idee und den Sql Server Möglichkeiten, dass nach Feierabend 4 Wochen Crunchtime im Kopf waren. Somit möchte ich euch an dieser Stelle mein erstes Modul in der PowerShell Gallery vorstellen</p>


https://www.powershellgallery.com/packages/psTerminalPerfCounter/0.1.0-preview


<p style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Die technischen Details, Entwicklungsstand findet ihr alle im Repository, ich möchte hier einfach die verschiedenen Möglichkeiten zeigen.</p>



<div style="height:30px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Main Features</h2>



<h3 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">100% PowerShell</h3>



<ul class="wp-block-list">
<li>keine externen Abhängigkeiten</li>
</ul>



<h3 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Terminal-Grafiken</h3>



<ul class="wp-block-list">
<li>natürlich ist es keine richtige Engine, je mehr Counter desto Hakeliger wird es, aber es reicht</li>



<li>Als Basis dient die Lösung von <a href="https://github.com/PrateekKumarSingh/Graphical" target="_blank" rel="noopener" title="">Prateek Singh</a>. Ohne diesen Fund hätte ich wohl dieses Problem erst lösen müssen, wofür ich vermutlich keine Zeit gehabt hätte. DANKE!!!</li>
</ul>



<figure class="wp-block-image aligncenter size-full is-resized" style="margin-top:var(--wp--preset--spacing--40);margin-bottom:var(--wp--preset--spacing--40)"><img loading="lazy" decoding="async" width="632" height="757" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_example_cpu.png" alt="" class="wp-image-609" style="width:383px;height:auto" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_example_cpu.png 632w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_example_cpu-250x300.png 250w" sizes="auto, (max-width: 632px) 100vw, 632px" /></figure>



<p></p>



<h3 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Configuration Templates</h3>



<ul class="wp-block-list">
<li>jedes Element der Ausgabe wird über Configuration Files gesteuert</li>



<li>flexibel, transportabel</li>
</ul>



<h3 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Individualisierung der Datenausgaben </h3>



<ul class="wp-block-list">
<li>für jeden Counter im Configuration-File kann eine eigene Ausgabe genutzt werden
<ul class="wp-block-list">
<li>Table, Graph oder Beide</li>
</ul>
</li>



<li>beliebige Skalierungen der Achsen in Steps und Max</li>



<li>beliebige Einfärbung der Values auf Basis einer benutzerdefinierten ColorMap per Counter</li>



<li>Konvertierung der Values per Configuration-File ( Byte -&gt; KB -&gt; MB -&gt; GB )</li>
</ul>



<h3 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Sprachunabhängig</h3>



<ul class="wp-block-list">
<li>Configuration Files basieren nicht auf den Counter-Pfaden sondern IDs</li>



<li>immer noch transportabel, egal welche Systemsprache</li>



<li>Translation von ID zu Counterpfad erfolgt erst zur Laufzeit</li>
</ul>



<ul class="wp-block-list">
<li>keine externen Abhängigkeiten</li>



<li>Ich wusste gar nicht, dass dies möglich ist mit Windows Bordmitteln. Auch hier bin ich durch Zufall über einen Blog gestolpert bei <a href="https://powershell.one/tricks/performance/performance-counters" target="_blank" rel="noopener" title="">PowerShell.ONE</a>. Auch hier ein dickes DANKE!!! Meine eigentliche Lösung sah mehrere Sprachvarianten ( DE, EN, FR, ES) vor, welche dann per auslesen der Systemlokalen gesetzt wurden.</li>
</ul>



<div style="height:30px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Demo mit CPU Configuration</h2>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: powershell; title: ; notranslate">
# Install module with required dependency (GripDevJsonSchemaValidator)
Install-Module -Name psTerminalPerfCounter -AllowPrerelease

# Import the module
Import-Module psTerminalPerfCounter

# Start Default Cpu Configuration
Start-tpcMonitor -ConfigName CPU
</pre></div>


<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-51c0b34d wp-block-columns-is-layout-flex" style="padding-top:var(--wp--preset--spacing--50);padding-bottom:var(--wp--preset--spacing--50)">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<figure class="wp-block-image aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="552" height="110" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_load.png" alt="" class="wp-image-610" style="width:622px;height:auto" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_load.png 552w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_load-300x60.png 300w" sizes="auto, (max-width: 552px) 100vw, 552px" /></figure>
</div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%">
<p>Beim Laden der Konfiguration werden die Counter IDs zu Counterpfaden übersetzt und getestet</p>
</div>
</div>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-0884d4d2 wp-block-columns-is-layout-flex" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<figure class="wp-block-image aligncenter size-full is-resized"><img loading="lazy" decoding="async" width="613" height="155" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_sample.png" alt="" class="wp-image-611" style="width:629px;height:auto" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_sample.png 613w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_sample-300x76.png 300w" sizes="auto, (max-width: 613px) 100vw, 613px" /></figure>
</div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%">
<p>Wenn das erfolgreich war, werden die ersten Samples gesammelt, damit ein Graph angezeigt werden kann</p>
</div>
</div>



<div class="wp-block-columns is-layout-flex wp-container-core-columns-is-layout-e242d015 wp-block-columns-is-layout-flex" style="padding-top:var(--wp--preset--spacing--50);padding-right:0;padding-bottom:var(--wp--preset--spacing--50);padding-left:0">
<div class="wp-block-column is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:66.66%">
<figure class="wp-block-image aligncenter size-full"><img loading="lazy" decoding="async" width="767" height="774" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_run.png" alt="" class="wp-image-612" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_run.png 767w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_run-297x300.png 297w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfcounter_run-150x150.png 150w" sizes="auto, (max-width: 767px) 100vw, 767px" /></figure>
</div>



<div class="wp-block-column is-vertically-aligned-center is-layout-flow wp-block-column-is-layout-flow" style="flex-basis:33.33%">
<p>Thats IT! </p>



<p>Innerhalb von 10 Sekunden 2 Performance Counter am Laufen, ohne Installation, ohne Sprachprobleme.</p>
</div>
</div>



<div style="height:30px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Demo Counter Translation</h2>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: powershell; title: ; notranslate">
# Translate ID -&gt; Path
Get-tpcPerformanceCounterInfo 238-6
</pre></div>


<figure class="wp-block-image aligncenter size-full" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)"><img loading="lazy" decoding="async" width="711" height="148" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_id.png" alt="" class="wp-image-613" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_id.png 711w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_id-300x62.png 300w" sizes="auto, (max-width: 711px) 100vw, 711px" /></figure>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: powershell; title: ; notranslate">
# Search Counter -&gt; Including ID
Get-tpcPerformanceCounterInfo &quot;Queue&quot;
</pre></div>


<figure class="wp-block-image aligncenter size-full" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:0"><img loading="lazy" decoding="async" width="1013" height="600" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_search1.png" alt="" class="wp-image-614" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_search1.png 1013w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_search1-300x178.png 300w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_search1-768x455.png 768w" sizes="auto, (max-width: 1013px) 100vw, 1013px" /></figure>



<p class="has-contrast-color has-text-color has-link-color wp-elements-a85209788f442c1a4bfcffc9ae003cc8" style="margin-bottom:var(--wp--preset--spacing--50)"><em>Die Ausgabe ist stark beschnitten, da das ResultSet enorm ist</em></p>


<div class="wp-block-syntaxhighlighter-code "><pre class="brush: powershell; title: ; notranslate">
# Search Counter -&gt; Including ID
Get-tpcPerformanceCounterInfo &quot;Processor Queue&quot;
</pre></div>


<figure class="wp-block-image aligncenter size-full" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)"><img loading="lazy" decoding="async" width="675" height="79" src="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_search2.png" alt="" class="wp-image-615" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_search2.png 675w, https://dbavonnebenan.de/wp-content/uploads/2025/07/perfmon_translate_search2-300x35.png 300w" sizes="auto, (max-width: 675px) 100vw, 675px" /></figure>



<div style="height:30px" aria-hidden="true" class="wp-block-spacer"></div>



<h2 class="wp-block-heading" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)">Wie geht&#8217;s weiter?</h2>



<p>Die Basis läuft, die planned Feature <a href="https://github.com/gabrielkoehl/psTerminalPerfCounter/blob/main/docs/en-US/DevelopmentStatus.MD" target="_blank" rel="noopener" title="">Liste</a> ist lang und das, was ich wirklich brauche bezüglich Sql Server ist noch in weiter Ferne. Ich hoffe ich habe nicht ein Problem bedient, was es gar nicht gibt, aber dieses Modul adressiert einfach alle Probleme, die ich schon immer mit den Performance Countern hatte, siehe oben.</p>



<p>Weiterhin ist das mein erstes größeres Projekt, was ich Public entwickle, somit könnte Github nicht immer den erwarteten Standards entsprechen. Über Feedback und Hinweise freue ich mich immer.</p>



<figure class="wp-block-image aligncenter size-full is-resized" style="margin-top:var(--wp--preset--spacing--50);margin-bottom:var(--wp--preset--spacing--50)"><img loading="lazy" decoding="async" width="246" height="470" src="https://dbavonnebenan.de/wp-content/uploads/2025/05/emotes_standing_1.png" alt="happy" class="wp-image-330" style="width:125px;height:auto" srcset="https://dbavonnebenan.de/wp-content/uploads/2025/05/emotes_standing_1.png 246w, https://dbavonnebenan.de/wp-content/uploads/2025/05/emotes_standing_1-157x300.png 157w" sizes="auto, (max-width: 246px) 100vw, 246px" /></figure>


https://github.com/gabrielkoehl/psTerminalPerfCounter<p>The post <a href="https://dbavonnebenan.de/psterminalperfcounter-speedup-your-performance-counters_de/">psTerminalPerfCounter – SpeedUp your Performance Counters in Terminal</a> first appeared on <a href="https://dbavonnebenan.de">DBA von Nebenan</a>.</p>]]></content:encoded>
					
					<wfw:commentRss>https://dbavonnebenan.de/psterminalperfcounter-speedup-your-performance-counters_de/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
