Coder Social home page Coder Social logo

microsoft / diagmanager Goto Github PK

View Code? Open in Web Editor NEW
245.0 41.0 96.0 6.83 MB

Pssdiag/Sqldiag Manager is a graphic interface that provides customization capabilities to collect data for SQL Server using sqldiag collector engine. The data collected can be used by SQL Nexus tool which help you troubleshoot SQL Server performance problems. This is the same tool Microsoft SQL Server support engineers use to for data collection to troubleshoot customer's performance problems.

License: Other

Batchfile 1.19% PowerShell 5.15% SQLPL 7.93% C# 25.16% Shell 3.85% TSQL 56.43% VBScript 0.29%

diagmanager's Introduction

What is Pssdiag/Sqldiag Manager?

licence badge stars badge forks badge issues badge

Pssdiag/Sqldiag Manager is a graphic interface that provides customization capabilities to collect data for SQL Server using sqldiag collector engine. The data collected can be used by SQL Nexus tool which help you troubleshoot SQL Server performance problems. This is the same tool Microsoft SQL Server support engineers use to for data collection to troubleshoot customer's performance problems.

Installation

Download

Download it from release tab or click here to download. Source files are also included in the release tab.

Software Requirements

  1. Diag Manager
    • Windows 7 or Windows 10 (32 or 64 bit)
    • .NET Framework 4.5
  2. Data collection The collector can only run on a machine that has SQL Server with targeted version (either client tools only or full version) installed

Known Issues

Known Issues (wiki)

How to use DiagManager

  1. Gettting Started: This page tells you how to use the tool including installation, configuration and running the tool
  2. Customization guide: This page tells you how you can create you own custom collector to use in addition to default collectors shipped.
  3. Frequently Asked Questions (FAQ: This page will answer most commonly asked questions.
  4. Common Issues: This page will document most commonly encountered issues and errors

How it works

This tool lets you customize what you want to collect and then let you create a data collection package. You extract the package and run SQLdiag data collector engine on the SQL Server you are troubleshooting.

Feature Highlights

  1. Powerful data collection capabilities: The tool relies on SQLdiag collector engine to provide collection of perfmon, profiler trace, msinfo32, errorlogs, Windows event logs, TSQL script output and registry exports.
  2. Default templates/scenarios: You can choose SQL Server version and platform (32 bit or 64 bit). The tool will automatically choose a default template for the combination. This will have default set of perfmon counters, profiler traces.
  3. Shipped with ready to use Custom collectors: Most commonly used custom collectors include SQL Server 2005, 2008 or 2008 R2 performance collector.
  4. Customization/Extensibility: You can customize what perfmon and profiler trace events you want to collect. Additionally, you can create your own custom collectors with TSQL Scripts, batch files and utilities. See customization guide.
  5. Packaging: With a single click of save, the tool will package all your files into a single cab so that you can ship to the machine where you intend to execute it.
  6. Integration with SQL Nexus : The custom collectors shipped will collect data that can be analyzed by SQL Nexus Tool.

License Agreement

MIT License

diagmanager's People

Contributors

1dontex1st avatar asaviolimsft avatar cafealternativo avatar denzilribeiro avatar gambit9009 avatar hacitandogan avatar jackli2000 avatar jagriffin5 avatar keeyu2 avatar ktaranov avatar peter-msft avatar pijocoder avatar rl-msft avatar seangallardy avatar shiitake avatar shiyangqiu avatar suresh-kandoth avatar taiyebzakir avatar tiagodiasfernandes avatar troymoen1 avatar willibrandon avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

diagmanager's Issues

.Net pop-up when executing PSSDiag on Windows Server 2016

Windows Server 2016 disables .Net 2.0, 3.0, and 3.5 by default. Therefore, when executing PSSDiag on a WS 2016 system, the Feature install for .Net 2.0/3.0/3.5 will pop-up. This fix changes the .Net framework target of the DiagUtil to .Net 4.5.2.

PSSdiag won't trace SQL Server 2016 SP2 instances

Because of a discrepancy in SP2 version number in registry, SQLDIAG/PSSDiag won’t be able to discover and trace a SQL Server 2016 SP2 instance.

Using “.” For machine and “*” for instance will NOT detect the SP2 instance. Even using the instance name explicitly will not work.

The manual workaround is to force instance name AND use wildcard * (instead of 13) in SQL version in PSSDiag XML :
Eg for a default instance :

And if you do that with pssdiag you will get a msgbox prompt as follows :


Unable to find SQL Server client tools such as sqldiag.exe from this machine. Data collection will fail

OK

Ignore and proceed, it should work.

How to run pssdiag on a single database?

Hi, I would like to run pssdiag on a single database using Diagmanager (instead of the whole instance), is it possible to do that?

Pretty much i would like to filter the profiler trace to be run only on 1 database... Just like if you just run sql profiler - you can filter and mention the database... I don't see a way to goto the 'Profiler Trace' tab of diagmanager and 'choose' a database...

Thanks.

Feature Request: Open existing PSSDIAG packages to veiw/edit config

One use case I would like to see enabled is opening an existing PSSDIAG package to view the current settings and to be able to make changes if necessary and save that package or save as a new package.

It would be nice to be able to see what data will be collected in a PSSDIAG I am being asked to run.

Alternatively, if I build a package and send to a customer, if we need to make changes, it would be nice to open the existing one, and make small changes to the data collection set, and save it. This would make it easier to make iterative changes over time until the data collection set is finalized.

enabled=false does not disable XEvent collection

If you originally configure pssdiag to collect XEvent session and decide later to disable, you locate the XEvent custom group in the pssdiag.xml file and note the enabled="true" and modify it to enabled="false"

However running pssdiag you will observe that the XEvent session is still captured.

Setting enabled to false should eliminate XEvent data collection.

Unable to find SQL Server client tools such as sqldiag.exe

Hi,
unable to lunch pssdiag on SQL SErver 2016 SP1 on windows 2016 standard:

C:\Temp\pssd>pssdiag.cmd
2017/10/22 12:45:04.97 SQLDIAG Collector version
2017/10/22 12:45:04.99 SQLDIAG

IMPORTANT: Please wait until you see "Collection started" before attempting to reproduce your issue
2017/10/22 12:45:05.01 SQLDIAG Output path: C:\Temp\pssd\output
2017/10/22 12:45:05.03 SQLDIAG Error opening HKLM key . Function result: 53. Message: The network path was not found.
2017/10/22 12:45:05.03 SQLDIAG Error opening HKLM key . Function result: 53. Message: The network path was not found.
2017/10/22 12:45:05.03 SQLDIAG Error opening HKLM key . Function result: 53. Message: The network path was not found.
2017/10/22 12:45:05.03 SQLDIAG Error opening HKLM key . Function result: 53. Message: The network path was not found.
2017/10/22 12:45:05.03 SQLDIAG Error opening HKLM key . Function result: 53. Message: The network path was not found.

2017/10/22 12:45:05.04 SQLDIAG There are no instances of version 13 on this computer

2017/10/22 12:45:05.04 SQLDIAG . Function result: 87. Message: The parameter is incorrect.

PSSDIAG | Profiler | SQL 2016 | Detailed Performance doesn't include Locks: Deadlock Graph

Hi team,

Just encountered an issue where we picked Detailed Performance to capture a Deadlock issue.

After running PSSDIAG the Deadlock Graph event was missing.
PSSDIAG.XML file doesn’t show it either as a possible Profiler event.

Did some tests and it turns out if you uncheck “General Performance” the Deadlock Graph event is removed.

We need to make sure Detailed Performance checks that Profiler Event, even if General Performance is removed.

general and detailed

BTW, this doesn’t happen with XEvents in PSSDIAG configuration manager.

just detailed no deadlock graph

Transactions counter prefixed with double colons

In SQLPerfmon_Template.xml on the line <PerfmonObject name="\MSSQL$%s::Transactions"> Transactions prefixed with two colons. Because of that counter sorted incorrectly in GUI and pssdiag.xml also contains incorrect counter name, that cannot be added to BLG collection.
Could not add counter: \\MSSQL$sql2016::Transactions

Invalid Node fetch

I am connecting a clustered instance,
I used sql virtual network name already in the pssdiag.xml file. but still get

2019/02/22 00:53:01.87 SQLDIAG Invalid node fetched. (null)

pssdiag output

May I know if the pssdiag output of customized sql can output to xls??

and anyway I can output execution plan from pssdiag to xml format ?

Collect ADR related DMV output

Collect ADR DMV output

select * From sys.dm_tran_persistent_version_store_stats
select * From sys.dm_tran_aborted_transactions

Custom Diagnostics - Tempdb Space and Latching - Never Stopping

Every time I need to use the Tempdb Space and Latching it never stops. On the command Window, customers keep seeing the messages below and it never ends. I am also able to reproduce it on my labs all the time

2021/05/20 10:24:54.99 SQLDIAG Waiting on Tempdb Space and Latching: TempDbAnalysis
2021/05/20 10:25:25.23 SQLDIAG Waiting on Tempdb Space and Latching: TempDbAnalysis
2021/05/20 10:25:55.46 SQLDIAG Waiting on Tempdb Space and Latching: TempDbAnalysis

Because of that, we are required to press ctrl + c again and the data collection is interrupted before it completely finalizes

sp_perf_stats_snapshot high memory usage.

This stored proc obtained a 81198MB memory grant when running on one of our larger servers. The server has 420GB allocated to SQLSever and (at the time) had a plan cache in the order of 18.5GB.

pssdiag using DAC connection

Sometimes except DAC, there is no way to connect to SQL server at the problem time. So pssdiag also can not connect and collect at that situation. Is it possible to give a parameter to PSSDiag to use DAC connection and collect data via DAC.

Duplicate Perfmon Counters

While working with the PSSDIAG.XML file, I ran into some duplicate counters.

After investigation, these counters were also duplicated in diagmanager.

Method to discovery:

generated a script with only perfmon with all counters ticked

combined PerfmonObject with all counters in perfmoncounter tag and output to a file.

ran script on file to look for duplicates. .

the following counters have duplicates in the diagmanager:

"\Cache\Copy Read Hits %"

"\Cache\Data Map Hits %"

"\Cache\Data Map Pins/sec"

"\Cache\MDL Read Hits %"

"\Cache\Pin Read Hits %"

"\Memory% Committed Bytes In Use"

"\MSSQL$%s:Database Mirroring(*)\Log Send Queue"

"\MSSQL$%s:General Statistics\Temp Tables For Destruction"

"\Paging File(*)% Usage"

"\Paging File(*)% Usage Peak"

"\Paging File(_Total)% Usage"

"\Paging File(_Total)% Usage Peak"

"\System% Registry Quota In Use"

PSSDiag.com will still run with however it is interfacing with perfmon/logman. SQLDIAG must have implementation to ignore duplicate counters.

This is more to raise awareness since its existence is not impacting operation to collect data.

Make QDS meta data collector default in Detail Performance collect and Optional in light performance and general performance collector.

By default QDS meta data is collected by light performance and general performance collector. In some cases we have seen QDS meta data goes to 12GB in size and if QDS is enabled on multiple databases then the size of output will be huge.

Make QDS meta data collector default in Detail Performance collect and Optional in light performance and general performance collector.

Case mismatch in PSSDiag_XEvent collectors

The Custom SQL group collectors in pssdiag.xml that attached the .xel file target, start, and stop the session look for "pssdiag_xevent" in all lowercase. The pssdiag_xevent.sql file that defines the events to be collected creates a session named "PSSDiag_XEvent" with multiple uppercase characters. This causes the collection to fail on servers with a case sensitive collation.

Please group PSSDiag packages

As someone who manages environments with SQL Server versions from 2005 to 2019 all of the zip files available at Common CSS PSSDiag Packages are of great value to me. It is however a laborious job to download each one. Would it be possible to please provide a zip for each SQL Server version that contains the Light, General and Detailed zips? Or perhaps three zips - one for each of all of the Light, General and Detailed zips? Something just to help out a little bit would make difference for those of us working on a variety of SQL Server versions. Thanks!

Add new sql 2019 perfmon counters

Add new sql 2019 perfmon counters

SQLServer:External Scripts Partition By Executions
SQLServer:Availability Group Active Hadr Threads

Make SQL Trace as default Collector

Today readtrace is not importing Query Plan related information, it make it difficult to troubleshoot the performance issues with xEvent data, can we make SQL Trace as default Collector in PSSDIag for SQL Server 2014, SQL Server 2016,SQL Server 2017 collector.

pssdiag for non-default sql port

where should I put the sql port number if the sql server instance is using non default port.?
what's about default instance ?

Variable for SQL Server Log directory for error log files and extended events

Hi,

I was using %SSPATH% variable before to get the location of the SQL Server log folder where we all the log files including extended event files are stored. Now it seems like not working.

Could you please guide me which variable I should use to get the location of the log folder. I use that with ROBOCOPY command to copy all files created in last 7 days for my PSSDIag collection. Now that functionality is broken for my custom task. Could you please help me to resolve that.
-Yagnesh

SQLDiag There are no instances of version 13 on this computer

Hi

When I run on Server 2016, SQL 13.0.2216 I get
2018/06/25 12:12:49.26 SQLDIAG Collector version
2018/06/25 12:12:49.28 SQLDIAG
IMPORTANT: Please wait until you see "Collection started" before attempting to reproduce your issue
2018/06/25 12:12:49.28 SQLDIAG Output path: C:\Temp\pssd\output
2018/06/25 12:12:49.35 SQLDIAG Error opening HKLM key . Function result: 5. Message: Access is denied.
2018/06/25 12:12:49.40 SQLDIAG Error opening HKLM key . Function result: 5. Message: Access is denied.
2018/06/25 12:12:49.51 SQLDIAG Error opening HKLM key . Function result: 5. Message: Access is denied.
2018/06/25 12:12:49.60 SQLDIAG Error opening HKLM key . Function result: 5. Message: Access is denied.
2018/06/25 12:12:49.65 SQLDIAG Error opening HKLM key . Function result: 5. Message: Access is denied.
2018/06/25 12:12:49.73 SQLDIAG There are no instances of version 13 on this computer
2018/06/25 12:12:49.73 SQLDIAG . Function result: 87. Message: The parameter is incorrect.

I'm a local admin on this system.
SQL Mgmt Studio 17 is installed, could it explain why I'm not able to run the tool ?

Nick

PSSDiag issue

Build 13.0.1600.32

Windows Server 2008R2
.net framework 4.6.2
SQL Server 2012

ServerName: Server1
ServerName: Server2
AG: AGGroup

Issue: SQLDiag there is no instance named MSSQLServer
Issue: There is no version 11

Pssdiag.xml file enclosed at bottom

I’ve tried using the servername: Server1 and or .
For the instance I’ve tried mssqlserver for the default instance or even the * for all

I keep getting the same error there is no instance named mssqlserver or I also get there is no version 11. Depending on the variables choosen. Was hoping that you have some insight. I’ve even manipulated the sql version in the file.

Another issue with SQL Server 2014 locally on my desktop. I can get everything to run. But when I import into SQLNexus I get an xel reader error on a trace files.

Thanks
Steven

I sent an email on 2/2 @4:21 eastern time

pssdiag.xml

<?xml version="1.0"?> <dsConfig> <DiagMgrInfo> <DiagManagerVersion>13.0.1600.32 Build Date: 1/6/2017</DiagManagerVersion> <IntendedPlatform>x64</IntendedPlatform> <IntendedVersion>11</IntendedVersion> <PssdiagConfigDate>2/2/2017 2:15:54 PM</PssdiagConfigDate> </DiagMgrInfo> <Collection casenumber="SRX000000000000" setupver="12.0.0.1001"> <Machines> <Machine name="Server1"> <MachineCollectors> <EventlogCollector enabled="true" startup="false" shutdown="true" /> <PerfmonCollector enabled="true" maxfilesize="250" pollinginterval="5"> <PerfmonCounters> <PerfmonObject enabled="true" name="\.NET CLR Memory(*)"> <PerfmonCounter enabled="true" name="\# Bytes in all Heaps" /> <PerfmonCounter enabled="true" name="\# GC Handles" /> <PerfmonCounter enabled="true" name="\# Gen 0 Collections" /> <PerfmonCounter enabled="true" name="\# Gen 1 Collections" /> <PerfmonCounter enabled="true" name="\# Gen 2 Collections" /> <PerfmonCounter enabled="true" name="\# Induced GC" /> <PerfmonCounter enabled="true" name="\# of Pinned Objects" /> <PerfmonCounter enabled="true" name="\# of Sink Blocks in use" /> <PerfmonCounter enabled="true" name="\# Total committed Bytes" /> <PerfmonCounter enabled="true" name="\# Total reserved Bytes" /> <PerfmonCounter enabled="true" name="\% Time in GC" /> <PerfmonCounter enabled="true" name="\Allocated Bytes/sec" /> <PerfmonCounter enabled="true" name="\Finalization Survivors" /> <PerfmonCounter enabled="true" name="\Gen 0 heap size" /> <PerfmonCounter enabled="true" name="\Gen 0 Promoted Bytes/Sec" /> <PerfmonCounter enabled="true" name="\Gen 1 heap size" /> <PerfmonCounter enabled="true" name="\Gen 1 Promoted Bytes/Sec" /> <PerfmonCounter enabled="true" name="\Gen 2 heap size" /> <PerfmonCounter enabled="true" name="\Large Object Heap size" /> <PerfmonCounter enabled="true" name="\Process ID" /> <PerfmonCounter enabled="true" name="\Promoted Memory from Gen 0" /> <PerfmonCounter enabled="true" name="\Promoted Memory from Gen 1" /> </PerfmonObject> <PerfmonObject enabled="true" name="\IP"> <PerfmonCounter enabled="true" name="\Datagrams Forwarded/sec" /> <PerfmonCounter enabled="true" name="\Datagrams Outbound Discarded" /> <PerfmonCounter enabled="true" name="\Datagrams Outbound No Route" /> <PerfmonCounter enabled="true" name="\Datagrams Received Address Errors" /> <PerfmonCounter enabled="true" name="\Datagrams Received Delivered/sec" /> <PerfmonCounter enabled="true" name="\Datagrams Received Discarded" /> <PerfmonCounter enabled="true" name="\Datagrams Received Header Errors" /> <PerfmonCounter enabled="true" name="\Datagrams Received Unknown Protocol" /> <PerfmonCounter enabled="true" name="\Datagrams Received/sec" /> <PerfmonCounter enabled="true" name="\Datagrams Sent/sec" /> <PerfmonCounter enabled="true" name="\Datagrams/sec" /> <PerfmonCounter enabled="true" name="\Fragment Re-assembly Failures" /> <PerfmonCounter enabled="true" name="\Fragmentation Failures" /> <PerfmonCounter enabled="true" name="\Fragmented Datagrams/sec" /> <PerfmonCounter enabled="true" name="\Fragments Created/sec" /> <PerfmonCounter enabled="true" name="\Fragments Re-assembled/sec" /> <PerfmonCounter enabled="true" name="\Fragments Received/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\LogicalDisk(*)"> <PerfmonCounter enabled="true" name="\% Disk Read Time" /> <PerfmonCounter enabled="true" name="\% Disk Time" /> <PerfmonCounter enabled="true" name="\% Disk Write Time" /> <PerfmonCounter enabled="true" name="\% Free Space" /> <PerfmonCounter enabled="true" name="\% Idle Time" /> <PerfmonCounter enabled="true" name="\Avg. Disk Bytes/Read" /> <PerfmonCounter enabled="true" name="\Avg. Disk Bytes/Transfer" /> <PerfmonCounter enabled="true" name="\Avg. Disk Bytes/Write" /> <PerfmonCounter enabled="true" name="\Avg. Disk Queue Length" /> <PerfmonCounter enabled="true" name="\Avg. Disk Read Queue Length" /> <PerfmonCounter enabled="true" name="\Avg. Disk sec/Read" /> <PerfmonCounter enabled="true" name="\Avg. Disk sec/Transfer" /> <PerfmonCounter enabled="true" name="\Avg. Disk sec/Write" /> <PerfmonCounter enabled="true" name="\Avg. Disk Write Queue Length" /> <PerfmonCounter enabled="true" name="\Current Disk Queue Length" /> <PerfmonCounter enabled="true" name="\Disk Bytes/sec" /> <PerfmonCounter enabled="true" name="\Disk Read Bytes/sec" /> <PerfmonCounter enabled="true" name="\Disk Reads/sec" /> <PerfmonCounter enabled="true" name="\Disk Transfers/sec" /> <PerfmonCounter enabled="true" name="\Disk Write Bytes/sec" /> <PerfmonCounter enabled="true" name="\Disk Writes/sec" /> <PerfmonCounter enabled="true" name="\Free Megabytes" /> <PerfmonCounter enabled="true" name="\Split IO/Sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\Memory"> <PerfmonCounter enabled="true" name="\% Committed Bytes In Use" /> <PerfmonCounter enabled="true" name="\Available Bytes" /> <PerfmonCounter enabled="true" name="\Available KBytes" /> <PerfmonCounter enabled="true" name="\Available MBytes" /> <PerfmonCounter enabled="true" name="\Cache Bytes" /> <PerfmonCounter enabled="true" name="\Cache Bytes Peak" /> <PerfmonCounter enabled="true" name="\Cache Faults/sec" /> <PerfmonCounter enabled="true" name="\Commit Limit" /> <PerfmonCounter enabled="true" name="\Committed Bytes" /> <PerfmonCounter enabled="true" name="\Demand Zero Faults/sec" /> <PerfmonCounter enabled="true" name="\Free &amp; Zero Page List Bytes" /> <PerfmonCounter enabled="true" name="\Free System Page Table Entries" /> <PerfmonCounter enabled="true" name="\Modified Page List Bytes" /> <PerfmonCounter enabled="true" name="\Page Faults/sec" /> <PerfmonCounter enabled="true" name="\Page Reads/sec" /> <PerfmonCounter enabled="true" name="\Page Writes/sec" /> <PerfmonCounter enabled="true" name="\Pages Input/sec" /> <PerfmonCounter enabled="true" name="\Pages Output/sec" /> <PerfmonCounter enabled="true" name="\Pages/sec" /> <PerfmonCounter enabled="true" name="\Pool Nonpaged Allocs" /> <PerfmonCounter enabled="true" name="\Pool Nonpaged Bytes" /> <PerfmonCounter enabled="true" name="\Pool Paged Allocs" /> <PerfmonCounter enabled="true" name="\Pool Paged Bytes" /> <PerfmonCounter enabled="true" name="\Pool Paged Resident Bytes" /> <PerfmonCounter enabled="true" name="\Standby Cache Code Bytes " /> <PerfmonCounter enabled="true" name="\Standby Cache Normal Priority Bytes" /> <PerfmonCounter enabled="true" name="\Standby Cache Reserve Bytes" /> <PerfmonCounter enabled="true" name="\System Cache Resident Bytes" /> <PerfmonCounter enabled="true" name="\System Code Resident Bytes" /> <PerfmonCounter enabled="true" name="\System Code Total Bytes" /> <PerfmonCounter enabled="true" name="\System Driver Resident Bytes" /> <PerfmonCounter enabled="true" name="\System Driver Total Bytes" /> <PerfmonCounter enabled="true" name="\Transition Faults/sec" /> <PerfmonCounter enabled="true" name="\Transition Pages Repurposed/sec" /> <PerfmonCounter enabled="true" name="\Write Copies/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s::Transactions"> <PerfmonCounter enabled="true" name="\Free Space in tempdb (KB)" /> <PerfmonCounter enabled="true" name="\Longest Transaction Running Time" /> <PerfmonCounter enabled="true" name="\NonSnapshot Version Transactions" /> <PerfmonCounter enabled="true" name="\Snapshot Transactions" /> <PerfmonCounter enabled="true" name="\Transactions" /> <PerfmonCounter enabled="true" name="\Update conflict ratio" /> <PerfmonCounter enabled="true" name="\Update conflict ratio base" /> <PerfmonCounter enabled="true" name="\Update Snapshot Transactions" /> <PerfmonCounter enabled="true" name="\Version Cleanup rate (KB/s)" /> <PerfmonCounter enabled="true" name="\Version Generation rate (KB/s)" /> <PerfmonCounter enabled="true" name="\Version Store Size (KB)" /> <PerfmonCounter enabled="true" name="\Version Store unit count" /> <PerfmonCounter enabled="true" name="\Version Store unit creation" /> <PerfmonCounter enabled="true" name="\Version Store unit truncation" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Access Methods"> <PerfmonCounter enabled="true" name="\AU cleanup batches/sec" /> <PerfmonCounter enabled="true" name="\AU cleanups/sec" /> <PerfmonCounter enabled="true" name="\By-reference Lob Create Count" /> <PerfmonCounter enabled="true" name="\By-reference Lob Use Count" /> <PerfmonCounter enabled="true" name="\Count Lob Readahead" /> <PerfmonCounter enabled="true" name="\Count Pull In Row" /> <PerfmonCounter enabled="true" name="\Count Push Off Row" /> <PerfmonCounter enabled="true" name="\Deferred dropped AUs" /> <PerfmonCounter enabled="true" name="\Deferred Dropped rowsets" /> <PerfmonCounter enabled="true" name="\Dropped rowset cleanups/sec" /> <PerfmonCounter enabled="true" name="\Dropped rowsets skipped/sec" /> <PerfmonCounter enabled="true" name="\Extent Deallocations/sec" /> <PerfmonCounter enabled="true" name="\Extents Allocated/sec" /> <PerfmonCounter enabled="true" name="\Failed AU cleanup batches/sec" /> <PerfmonCounter enabled="true" name="\Failed leaf page cookie" /> <PerfmonCounter enabled="true" name="\Failed tree page cookie" /> <PerfmonCounter enabled="true" name="\Forwarded Records/sec" /> <PerfmonCounter enabled="true" name="\FreeSpace Page Fetches/sec" /> <PerfmonCounter enabled="true" name="\FreeSpace Scans/sec" /> <PerfmonCounter enabled="true" name="\Full Scans/sec" /> <PerfmonCounter enabled="true" name="\Index Searches/sec" /> <PerfmonCounter enabled="true" name="\InSysXact waits/sec" /> <PerfmonCounter enabled="true" name="\LobHandle Create Count" /> <PerfmonCounter enabled="true" name="\LobHandle Destroy Count" /> <PerfmonCounter enabled="true" name="\LobSS Provider Create Count" /> <PerfmonCounter enabled="true" name="\LobSS Provider Destroy Count" /> <PerfmonCounter enabled="true" name="\LobSS Provider Truncation Count" /> <PerfmonCounter enabled="true" name="\Mixed page allocations/sec" /> <PerfmonCounter enabled="true" name="\Page compression attempts/sec" /> <PerfmonCounter enabled="true" name="\Page Deallocations/sec" /> <PerfmonCounter enabled="true" name="\Page Splits/sec" /> <PerfmonCounter enabled="true" name="\Pages Allocated/sec" /> <PerfmonCounter enabled="true" name="\Pages compressed/sec" /> <PerfmonCounter enabled="true" name="\Probe Scans/sec" /> <PerfmonCounter enabled="true" name="\Range Scans/sec" /> <PerfmonCounter enabled="true" name="\Scan Point Revalidations/sec" /> <PerfmonCounter enabled="true" name="\Skipped Ghosted Records/sec" /> <PerfmonCounter enabled="true" name="\Table Lock Escalations/sec" /> <PerfmonCounter enabled="true" name="\Used leaf page cookie" /> <PerfmonCounter enabled="true" name="\Used tree page cookie" /> <PerfmonCounter enabled="true" name="\Workfiles Created/sec" /> <PerfmonCounter enabled="true" name="\Worktables Created/sec" /> <PerfmonCounter enabled="true" name="\Worktables From Cache Base" /> <PerfmonCounter enabled="true" name="\Worktables From Cache Ratio" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Availability Replica(*)"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Bytes Received from Replica/sec" /> <PerfmonCounter enabled="true" name="\Bytes Sent to Replica/sec" /> <PerfmonCounter enabled="true" name="\Bytes Sent to Transport/sec" /> <PerfmonCounter enabled="true" name="\Flow Control Time (ms/sec)" /> <PerfmonCounter enabled="true" name="\Flow Control/sec" /> <PerfmonCounter enabled="true" name="\Receives from Replica/sec" /> <PerfmonCounter enabled="true" name="\Resent Messages/sec" /> <PerfmonCounter enabled="true" name="\Sends to Replica/sec" /> <PerfmonCounter enabled="true" name="\Sends to Transport/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Backup Device"> <PerfmonCounter enabled="true" name="\Device Throughput Bytes/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Batch Resp Statistics(*)"> <PerfmonCounter enabled="true" name="\Batches &gt;=000000ms &amp; &lt;000001ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=000001ms &amp; &lt;000002ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=000002ms &amp; &lt;000005ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=000005ms &amp; &lt;000010ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=000010ms &amp; &lt;000020ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=000020ms &amp; &lt;000050ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=000050ms &amp; &lt;000100ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=000100ms &amp; &lt;000200ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=000200ms &amp; &lt;000500ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=000500ms &amp; &lt;001000ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=001000ms &amp; &lt;002000ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=002000ms &amp; &lt;005000ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=005000ms &amp; &lt;010000ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=010000ms &amp; &lt;020000ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=020000ms &amp; &lt;050000ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=050000ms &amp; &lt;100000ms" /> <PerfmonCounter enabled="true" name="\Batches &gt;=100000ms" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Broker Activation"> <PerfmonCounter enabled="true" name="\Stored Procedures Invoked/sec" /> <PerfmonCounter enabled="true" name="\Task Limit Reached" /> <PerfmonCounter enabled="true" name="\Task Limit Reached/sec" /> <PerfmonCounter enabled="true" name="\Tasks Aborted/sec" /> <PerfmonCounter enabled="true" name="\Tasks Running" /> <PerfmonCounter enabled="true" name="\Tasks Started/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Broker Statistics"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Activation Errors Total" /> <PerfmonCounter enabled="true" name="\Broker Transaction Rollbacks" /> <PerfmonCounter enabled="true" name="\Corrupted Messages Total" /> <PerfmonCounter enabled="true" name="\Dequeued TransmissionQ Msgs/sec" /> <PerfmonCounter enabled="true" name="\Dialog Timer Event Count" /> <PerfmonCounter enabled="true" name="\Dropped Messages Total" /> <PerfmonCounter enabled="true" name="\Enqueued Local Messages Total" /> <PerfmonCounter enabled="true" name="\Enqueued Local Messages/sec" /> <PerfmonCounter enabled="true" name="\Enqueued Messages Total" /> <PerfmonCounter enabled="true" name="\Enqueued Messages/sec" /> <PerfmonCounter enabled="true" name="\Enqueued P1 Messages/sec" /> <PerfmonCounter enabled="true" name="\Enqueued P10 Messages/sec" /> <PerfmonCounter enabled="true" name="\Enqueued P2 Messages/sec" /> <PerfmonCounter enabled="true" name="\Enqueued P3 Messages/sec" /> <PerfmonCounter enabled="true" name="\Enqueued P4 Messages/sec" /> <PerfmonCounter enabled="true" name="\Enqueued P5 Messages/sec" /> <PerfmonCounter enabled="true" name="\Enqueued P6 Messages/sec" /> <PerfmonCounter enabled="true" name="\Enqueued P7 Messages/sec" /> <PerfmonCounter enabled="true" name="\Enqueued P8 Messages/sec" /> <PerfmonCounter enabled="true" name="\Enqueued P9 Messages/sec" /> <PerfmonCounter enabled="true" name="\Enqueued TransmissionQ Msgs/sec" /> <PerfmonCounter enabled="true" name="\Enqueued Transport Msg Frag Tot" /> <PerfmonCounter enabled="true" name="\Enqueued Transport Msg Frag/sec" /> <PerfmonCounter enabled="true" name="\Enqueued Transport Msgs Total" /> <PerfmonCounter enabled="true" name="\Enqueued Transport Msgs/sec" /> <PerfmonCounter enabled="true" name="\Forwarded Messages Total" /> <PerfmonCounter enabled="true" name="\Forwarded Messages/sec" /> <PerfmonCounter enabled="true" name="\Forwarded Msg Byte Total" /> <PerfmonCounter enabled="true" name="\Forwarded Msg Byte/sec" /> <PerfmonCounter enabled="true" name="\Forwarded Msg Discarded Total" /> <PerfmonCounter enabled="true" name="\Forwarded Msgs Discarded/sec" /> <PerfmonCounter enabled="true" name="\Forwarded Pending Msg Bytes" /> <PerfmonCounter enabled="true" name="\Forwarded Pending Msg Count" /> <PerfmonCounter enabled="true" name="\SQL RECEIVE Total" /> <PerfmonCounter enabled="true" name="\SQL RECEIVEs/sec" /> <PerfmonCounter enabled="true" name="\SQL SEND Total" /> <PerfmonCounter enabled="true" name="\SQL SENDs/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Broker TO Statistics"> <PerfmonCounter enabled="true" name="\Avg. Length of Batched Writes" /> <PerfmonCounter enabled="true" name="\Avg. Length of Batched Writes BS" /> <PerfmonCounter enabled="true" name="\Avg. Time Between Batches Base" /> <PerfmonCounter enabled="true" name="\Avg. Time Between Batches(ms)" /> <PerfmonCounter enabled="true" name="\Avg. Time to Write Batch Base" /> <PerfmonCounter enabled="true" name="\Avg. Time to Write Batches (ms)" /> <PerfmonCounter enabled="true" name="\Transmission Obj Gets/Sec" /> <PerfmonCounter enabled="true" name="\Transmission Obj Set Dirty/Sec" /> <PerfmonCounter enabled="true" name="\Transmission Obj Writes/Sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Broker/DBM Transport"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Current Bytes for Recv I/O" /> <PerfmonCounter enabled="true" name="\Current Bytes for Send I/O" /> <PerfmonCounter enabled="true" name="\Current Msg Frags for Send I/O" /> <PerfmonCounter enabled="true" name="\Message Fragment P1 Sends/sec" /> <PerfmonCounter enabled="true" name="\Message Fragment P10 Sends/sec" /> <PerfmonCounter enabled="true" name="\Message Fragment P2 Sends/sec" /> <PerfmonCounter enabled="true" name="\Message Fragment P3 Sends/sec" /> <PerfmonCounter enabled="true" name="\Message Fragment P4 Sends/sec" /> <PerfmonCounter enabled="true" name="\Message Fragment P5 Sends/sec" /> <PerfmonCounter enabled="true" name="\Message Fragment P6 Sends/sec" /> <PerfmonCounter enabled="true" name="\Message Fragment P7 Sends/sec" /> <PerfmonCounter enabled="true" name="\Message Fragment P8 Sends/sec" /> <PerfmonCounter enabled="true" name="\Message Fragment P9 Sends/sec" /> <PerfmonCounter enabled="true" name="\Message Fragment Receives/sec" /> <PerfmonCounter enabled="true" name="\Message Fragment Sends/sec" /> <PerfmonCounter enabled="true" name="\Msg Fragment Recv Size Avg" /> <PerfmonCounter enabled="true" name="\Msg Fragment Send Size Avg" /> <PerfmonCounter enabled="true" name="\Open Connection Count" /> <PerfmonCounter enabled="true" name="\Pending Bytes for Recv I/O" /> <PerfmonCounter enabled="true" name="\Pending Bytes for Send I/O" /> <PerfmonCounter enabled="true" name="\Pending Msg Frags for Recv I/O" /> <PerfmonCounter enabled="true" name="\Pending Msg Frags for Send I/O" /> <PerfmonCounter enabled="true" name="\Receive I/O bytes/sec" /> <PerfmonCounter enabled="true" name="\Receive I/O Len Avg" /> <PerfmonCounter enabled="true" name="\Receive I/Os/sec" /> <PerfmonCounter enabled="true" name="\Recv I/O Buffer Copies bytes/sec" /> <PerfmonCounter enabled="true" name="\Recv I/O Buffer Copies Count" /> <PerfmonCounter enabled="true" name="\Send I/O bytes/sec" /> <PerfmonCounter enabled="true" name="\Send I/O Len Avg" /> <PerfmonCounter enabled="true" name="\Send I/Os/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Buffer Manager"> <PerfmonCounter enabled="true" name="\Background writer pages/sec" /> <PerfmonCounter enabled="true" name="\Buffer cache hit ratio" /> <PerfmonCounter enabled="true" name="\Checkpoint pages/sec" /> <PerfmonCounter enabled="true" name="\Database pages" /> <PerfmonCounter enabled="true" name="\Extension allocated pages" /> <PerfmonCounter enabled="true" name="\Extension free pages" /> <PerfmonCounter enabled="true" name="\Extension in use as percentage" /> <PerfmonCounter enabled="true" name="\Extension outstanding IO counter" /> <PerfmonCounter enabled="true" name="\Extension page evictions/sec" /> <PerfmonCounter enabled="true" name="\Extension page reads/sec" /> <PerfmonCounter enabled="true" name="\Extension page unreferenced time" /> <PerfmonCounter enabled="true" name="\Extension page writes/sec" /> <PerfmonCounter enabled="true" name="\Free list stalls/sec" /> <PerfmonCounter enabled="true" name="\Integral Controller Slope" /> <PerfmonCounter enabled="true" name="\Lazy writes/sec" /> <PerfmonCounter enabled="true" name="\Page life expectancy" /> <PerfmonCounter enabled="true" name="\Page lookups/sec" /> <PerfmonCounter enabled="true" name="\Page reads/sec" /> <PerfmonCounter enabled="true" name="\Page writes/sec" /> <PerfmonCounter enabled="true" name="\Readahead pages/sec" /> <PerfmonCounter enabled="true" name="\Readahead time/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Buffer Node(*)"> <PerfmonCounter enabled="true" name="\Database pages" /> <PerfmonCounter enabled="true" name="\Local Node page lookups/sec" /> <PerfmonCounter enabled="true" name="\Page life expectancy" /> <PerfmonCounter enabled="true" name="\Remote Node page lookups/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Catalog Metadata(*)"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Cache Entries Count" /> <PerfmonCounter enabled="true" name="\Cache Entries Pinned Count" /> <PerfmonCounter enabled="true" name="\Cache Hit Ratio" /> <PerfmonCounter enabled="true" name="\Cache Hit Ratio Base" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:CLR"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\CLR Execution" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Cursor Manager by Type(*)"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Active cursors" /> <PerfmonCounter enabled="true" name="\Cache Hit Ratio" /> <PerfmonCounter enabled="true" name="\Cache Hit Ratio Base" /> <PerfmonCounter enabled="true" name="\Cached Cursor Counts" /> <PerfmonCounter enabled="true" name="\Cursor Cache Use Counts/sec" /> <PerfmonCounter enabled="true" name="\Cursor memory usage" /> <PerfmonCounter enabled="true" name="\Cursor Requests/sec" /> <PerfmonCounter enabled="true" name="\Cursor worktable usage" /> <PerfmonCounter enabled="true" name="\Number of active cursor plans" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Cursor Manager Total"> <PerfmonCounter enabled="true" name="\Async population count" /> <PerfmonCounter enabled="true" name="\Cursor conversion rate" /> <PerfmonCounter enabled="true" name="\Cursor flushes" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Database Mirroring(*)"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Bytes Received/sec" /> <PerfmonCounter enabled="true" name="\Bytes Sent/sec" /> <PerfmonCounter enabled="true" name="\Log Bytes Received/sec" /> <PerfmonCounter enabled="true" name="\Log Bytes Redone from Cache/sec" /> <PerfmonCounter enabled="true" name="\Log Bytes Sent from Cache/sec" /> <PerfmonCounter enabled="true" name="\Log Bytes Sent/sec" /> <PerfmonCounter enabled="true" name="\Log Compressed Bytes Rcvd/sec" /> <PerfmonCounter enabled="true" name="\Log Compressed Bytes Sent/sec" /> <PerfmonCounter enabled="true" name="\Log Harden Time (ms)" /> <PerfmonCounter enabled="true" name="\Log Remaining for Undo KB" /> <PerfmonCounter enabled="true" name="\Log Scanned for Undo KB" /> <PerfmonCounter enabled="true" name="\Log Send Flow Control Time (ms)" /> <PerfmonCounter enabled="true" name="\Log Send Queue" /> <PerfmonCounter enabled="true" name="\Log Send Queue" /> <PerfmonCounter enabled="true" name="\Mirrored Write Transactions/sec" /> <PerfmonCounter enabled="true" name="\Pages Sent/sec" /> <PerfmonCounter enabled="true" name="\Receives/sec" /> <PerfmonCounter enabled="true" name="\Redo Bytes/sec" /> <PerfmonCounter enabled="true" name="\Redo Queue" /> <PerfmonCounter enabled="true" name="\Sends/sec" /> <PerfmonCounter enabled="true" name="\Transaction Delay" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Database Replica(*)"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\File Bytes Received/sec" /> <PerfmonCounter enabled="true" name="\Log Bytes Received/sec" /> <PerfmonCounter enabled="true" name="\Log remaining for undo" /> <PerfmonCounter enabled="true" name="\Log Send Queue" /> <PerfmonCounter enabled="true" name="\Mirrored Write Transactions/sec" /> <PerfmonCounter enabled="true" name="\Recovery Queue" /> <PerfmonCounter enabled="true" name="\Redo blocked/sec" /> <PerfmonCounter enabled="true" name="\Redo Bytes Remaining" /> <PerfmonCounter enabled="true" name="\Redone Bytes/sec" /> <PerfmonCounter enabled="true" name="\Total Log requiring undo" /> <PerfmonCounter enabled="true" name="\Transaction Delay" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Databases(*)"> <PerfmonCounter enabled="true" name="\Active Transactions" /> <PerfmonCounter enabled="true" name="\Backup/Restore Throughput/sec" /> <PerfmonCounter enabled="true" name="\Bulk Copy Rows/sec" /> <PerfmonCounter enabled="true" name="\Bulk Copy Throughput/sec" /> <PerfmonCounter enabled="true" name="\Commit table entries" /> <PerfmonCounter enabled="true" name="\Data File(s) Size (KB)" /> <PerfmonCounter enabled="true" name="\DBCC Logical Scan Bytes/sec" /> <PerfmonCounter enabled="true" name="\Group Commit Time/sec" /> <PerfmonCounter enabled="true" name="\Log Bytes Flushed/sec" /> <PerfmonCounter enabled="true" name="\Log Cache Hit Ratio" /> <PerfmonCounter enabled="true" name="\Log Cache Hit Ratio Base" /> <PerfmonCounter enabled="true" name="\Log Cache Reads/sec" /> <PerfmonCounter enabled="true" name="\Log File(s) Size (KB)" /> <PerfmonCounter enabled="true" name="\Log File(s) Used Size (KB)" /> <PerfmonCounter enabled="true" name="\Log Flush Wait Time" /> <PerfmonCounter enabled="true" name="\Log Flush Waits/sec" /> <PerfmonCounter enabled="true" name="\Log Flush Write Time (ms)" /> <PerfmonCounter enabled="true" name="\Log Flushes/sec" /> <PerfmonCounter enabled="true" name="\Log Growths" /> <PerfmonCounter enabled="true" name="\Log Pool Cache Misses/sec" /> <PerfmonCounter enabled="true" name="\Log Pool Disk Reads/sec" /> <PerfmonCounter enabled="true" name="\Log Pool Requests/sec" /> <PerfmonCounter enabled="true" name="\Log Shrinks" /> <PerfmonCounter enabled="true" name="\Log Truncations" /> <PerfmonCounter enabled="true" name="\Log Writer Queue Time/sec" /> <PerfmonCounter enabled="true" name="\Log Writer Writes/sec" /> <PerfmonCounter enabled="true" name="\Percent Log Used" /> <PerfmonCounter enabled="true" name="\Repl. Pending Xacts" /> <PerfmonCounter enabled="true" name="\Repl. Trans. Rate" /> <PerfmonCounter enabled="true" name="\Shrink Data Movement Bytes/sec" /> <PerfmonCounter enabled="true" name="\Tracked transactions/sec" /> <PerfmonCounter enabled="true" name="\Transactions/sec" /> <PerfmonCounter enabled="true" name="\Write Transactions/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Deprecated Features"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Usage" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Exec Statistics(*)"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Distributed Query" /> <PerfmonCounter enabled="true" name="\DTC calls" /> <PerfmonCounter enabled="true" name="\Extended Procedures" /> <PerfmonCounter enabled="true" name="\OLEDB calls" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:FileTable"> <PerfmonCounter enabled="true" name="\Avg time delete FileTable item" /> <PerfmonCounter enabled="true" name="\Avg time FileTable enumeration" /> <PerfmonCounter enabled="true" name="\Avg time FileTable handle kill" /> <PerfmonCounter enabled="true" name="\Avg time move FileTable item" /> <PerfmonCounter enabled="true" name="\Avg time per file I/O request" /> <PerfmonCounter enabled="true" name="\Avg time per file I/O response" /> <PerfmonCounter enabled="true" name="\Avg time rename FileTable item" /> <PerfmonCounter enabled="true" name="\Avg time to get FileTable item" /> <PerfmonCounter enabled="true" name="\Avg time update FileTable item" /> <PerfmonCounter enabled="true" name="\FileTable db operations/sec" /> <PerfmonCounter enabled="true" name="\FileTable enumeration reqs/sec" /> <PerfmonCounter enabled="true" name="\FileTable file I/O requests/sec" /> <PerfmonCounter enabled="true" name="\FileTable file I/O response/sec" /> <PerfmonCounter enabled="true" name="\FileTable item delete reqs/sec" /> <PerfmonCounter enabled="true" name="\FileTable item get requests/sec" /> <PerfmonCounter enabled="true" name="\FileTable item move reqs/sec" /> <PerfmonCounter enabled="true" name="\FileTable item rename reqs/sec" /> <PerfmonCounter enabled="true" name="\FileTable item update reqs/sec" /> <PerfmonCounter enabled="true" name="\FileTable kill handle ops/sec" /> <PerfmonCounter enabled="true" name="\FileTable table operations/sec" /> <PerfmonCounter enabled="true" name="\Time delete FileTable item BASE" /> <PerfmonCounter enabled="true" name="\Time FileTable enumeration BASE" /> <PerfmonCounter enabled="true" name="\Time FileTable handle kill BASE" /> <PerfmonCounter enabled="true" name="\Time move FileTable item BASE" /> <PerfmonCounter enabled="true" name="\Time per file I/O request BASE" /> <PerfmonCounter enabled="true" name="\Time per file I/O response BASE" /> <PerfmonCounter enabled="true" name="\Time rename FileTable item BASE" /> <PerfmonCounter enabled="true" name="\Time to get FileTable item BASE" /> <PerfmonCounter enabled="true" name="\Time update FileTable item BASE" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:General Statistics"> <PerfmonCounter enabled="true" name="\Active Temp Tables" /> <PerfmonCounter enabled="true" name="\Connection resets/sec" /> <PerfmonCounter enabled="true" name="\Event Notifications Delayed Drop" /> <PerfmonCounter enabled="true" name="\HTTP Authenticated Requests" /> <PerfmonCounter enabled="true" name="\Logical Connections" /> <PerfmonCounter enabled="true" name="\Logins/sec" /> <PerfmonCounter enabled="true" name="\Logouts/sec" /> <PerfmonCounter enabled="true" name="\Mars Deadlocks" /> <PerfmonCounter enabled="true" name="\Non-atomic yield rate" /> <PerfmonCounter enabled="true" name="\Processes blocked" /> <PerfmonCounter enabled="true" name="\SOAP Empty Requests" /> <PerfmonCounter enabled="true" name="\SOAP Method Invocations" /> <PerfmonCounter enabled="true" name="\SOAP Session Initiate Requests" /> <PerfmonCounter enabled="true" name="\SOAP Session Terminate Requests" /> <PerfmonCounter enabled="true" name="\SOAP SQL Requests" /> <PerfmonCounter enabled="true" name="\SOAP WSDL Requests" /> <PerfmonCounter enabled="true" name="\SQL Trace IO Provider Lock Waits" /> <PerfmonCounter enabled="true" name="\Temp Tables Creation Rate" /> <PerfmonCounter enabled="true" name="\Temp Tables For Destruction" /> <PerfmonCounter enabled="true" name="\Temp Tables For Destruction" /> <PerfmonCounter enabled="true" name="\Tempdb recovery unit id" /> <PerfmonCounter enabled="true" name="\Tempdb rowset id" /> <PerfmonCounter enabled="true" name="\Trace Event Notifications Queue" /> <PerfmonCounter enabled="true" name="\Transactions" /> <PerfmonCounter enabled="true" name="\User Connections" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Latches"> <PerfmonCounter enabled="true" name="\Average Latch Wait Time (ms)" /> <PerfmonCounter enabled="true" name="\Average Latch Wait Time Base" /> <PerfmonCounter enabled="true" name="\Latch Waits/sec" /> <PerfmonCounter enabled="true" name="\Number of SuperLatches" /> <PerfmonCounter enabled="true" name="\SuperLatch Demotions/sec" /> <PerfmonCounter enabled="true" name="\SuperLatch Promotions/sec" /> <PerfmonCounter enabled="true" name="\Total Latch Wait Time (ms)" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Locks(*)"> <PerfmonCounter enabled="true" name="\Average Wait Time (ms)" /> <PerfmonCounter enabled="true" name="\Average Wait Time Base" /> <PerfmonCounter enabled="true" name="\Lock Requests/sec" /> <PerfmonCounter enabled="true" name="\Lock Timeouts (timeout &gt; 0)/sec" /> <PerfmonCounter enabled="true" name="\Lock Timeouts/sec" /> <PerfmonCounter enabled="true" name="\Lock Wait Time (ms)" /> <PerfmonCounter enabled="true" name="\Lock Waits/sec" /> <PerfmonCounter enabled="true" name="\Number of Deadlocks/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Memory broker clerk size"> <PerfmonCounter enabled="true" name="\Internal benefit" /> <PerfmonCounter enabled="true" name="\Periodic evictions (pages)" /> <PerfmonCounter enabled="true" name="\Pressure evictions (pages/sec)" /> <PerfmonCounter enabled="true" name="\Simulation benefit" /> <PerfmonCounter enabled="true" name="\Simulation size" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Memory Manager"> <PerfmonCounter enabled="true" name="\Connection Memory (KB)" /> <PerfmonCounter enabled="true" name="\Database Cache Memory (KB)" /> <PerfmonCounter enabled="true" name="\External benefit of memory" /> <PerfmonCounter enabled="true" name="\Free Memory (KB)" /> <PerfmonCounter enabled="true" name="\Granted Workspace Memory (KB)" /> <PerfmonCounter enabled="true" name="\Lock Blocks" /> <PerfmonCounter enabled="true" name="\Lock Blocks Allocated" /> <PerfmonCounter enabled="true" name="\Lock Memory (KB)" /> <PerfmonCounter enabled="true" name="\Lock Owner Blocks" /> <PerfmonCounter enabled="true" name="\Lock Owner Blocks Allocated" /> <PerfmonCounter enabled="true" name="\Log Pool Memory (KB)" /> <PerfmonCounter enabled="true" name="\Maximum Workspace Memory (KB)" /> <PerfmonCounter enabled="true" name="\Memory Grants Outstanding" /> <PerfmonCounter enabled="true" name="\Memory Grants Pending" /> <PerfmonCounter enabled="true" name="\Optimizer Memory (KB)" /> <PerfmonCounter enabled="true" name="\Reserved Server Memory (KB)" /> <PerfmonCounter enabled="true" name="\SQL Cache Memory (KB)" /> <PerfmonCounter enabled="true" name="\Stolen Server Memory (KB)" /> <PerfmonCounter enabled="true" name="\Target Server Memory (KB)" /> <PerfmonCounter enabled="true" name="\Total Server Memory (KB)" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Memory Node(*)"> <PerfmonCounter enabled="true" name="\Database Node Memory (KB)" /> <PerfmonCounter enabled="true" name="\Foreign Node Memory (KB)" /> <PerfmonCounter enabled="true" name="\Free Node Memory (KB)" /> <PerfmonCounter enabled="true" name="\Stolen Memory Node (KB)" /> <PerfmonCounter enabled="true" name="\Target Node Memory" /> <PerfmonCounter enabled="true" name="\Total Node Memory" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Plan Cache(*)"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Cache Hit Ratio" /> <PerfmonCounter enabled="true" name="\Cache Hit Ratio Base" /> <PerfmonCounter enabled="true" name="\Cache Object Counts" /> <PerfmonCounter enabled="true" name="\Cache Objects in use" /> <PerfmonCounter enabled="true" name="\Cache Pages" /> <PerfmonCounter enabled="true" name="\Guided plan executions/sec" /> <PerfmonCounter enabled="true" name="\Misguided plan executions/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Replication Agents(Distribution)"> <PerfmonCounter enabled="true" name="\Running" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Replication Agents(Logreader)"> <PerfmonCounter enabled="true" name="\Running" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Replication Agents(Merge)"> <PerfmonCounter enabled="true" name="\Running" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Replication Agents(Queuereader)"> <PerfmonCounter enabled="true" name="\Running" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Replication Agents(Snapshot)"> <PerfmonCounter enabled="true" name="\Running" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Replication Dist."> <PerfmonCounter enabled="true" name="\Dist:Delivered Cmds/sec" /> <PerfmonCounter enabled="true" name="\Dist:Delivered Trans/sec" /> <PerfmonCounter enabled="true" name="\Dist:Delivery Latency" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Replication Logreader(*)"> <PerfmonCounter enabled="true" name="\Logreader:Delivered Cmds/sec" /> <PerfmonCounter enabled="true" name="\Logreader:Delivered Trans/sec" /> <PerfmonCounter enabled="true" name="\Logreader:Delivery Latency" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Replication Merge"> <PerfmonCounter enabled="true" name="\Conflicts/sec" /> <PerfmonCounter enabled="true" name="\Downloaded Changes/sec" /> <PerfmonCounter enabled="true" name="\Uploaded Changes/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Replication Snapshot"> <PerfmonCounter enabled="true" name="\Snapshot:Delivered Cmds/sec" /> <PerfmonCounter enabled="true" name="\Snapshot:Delivered Trans/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Resource Pool Stats(*)"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Active memory grant amount (KB)" /> <PerfmonCounter enabled="true" name="\Active memory grants count" /> <PerfmonCounter enabled="true" name="\Avg Disk Read IO (ms)" /> <PerfmonCounter enabled="true" name="\Avg Disk Read IO (ms) Base" /> <PerfmonCounter enabled="true" name="\Avg Disk Write IO (ms)" /> <PerfmonCounter enabled="true" name="\Avg Disk Write IO (ms) Base" /> <PerfmonCounter enabled="true" name="\Cache memory target (KB)" /> <PerfmonCounter enabled="true" name="\Compile memory target (KB)" /> <PerfmonCounter enabled="true" name="\CPU control effect %" /> <PerfmonCounter enabled="true" name="\CPU usage %" /> <PerfmonCounter enabled="true" name="\CPU usage % base" /> <PerfmonCounter enabled="true" name="\CPU usage target %" /> <PerfmonCounter enabled="true" name="\Disk Read Bytes/sec" /> <PerfmonCounter enabled="true" name="\Disk Read IO Issued/sec" /> <PerfmonCounter enabled="true" name="\Disk Read IO Throttled/sec" /> <PerfmonCounter enabled="true" name="\Disk Read IO/sec" /> <PerfmonCounter enabled="true" name="\Disk Write Bytes/sec" /> <PerfmonCounter enabled="true" name="\Disk Write IO Issued/sec" /> <PerfmonCounter enabled="true" name="\Disk Write IO Throttled/sec" /> <PerfmonCounter enabled="true" name="\Disk Write IO/sec" /> <PerfmonCounter enabled="true" name="\Max memory (KB)" /> <PerfmonCounter enabled="true" name="\Memory grant timeouts/sec" /> <PerfmonCounter enabled="true" name="\Memory grants/sec" /> <PerfmonCounter enabled="true" name="\Pending memory grants count" /> <PerfmonCounter enabled="true" name="\Query exec memory target (KB)" /> <PerfmonCounter enabled="true" name="\Target memory (KB)" /> <PerfmonCounter enabled="true" name="\Used memory (KB)" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:SQL Errors"> <PerfmonCounter enabled="true" name="\Errors/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:SQL Statistics"> <PerfmonCounter enabled="true" name="\Auto-Param Attempts/sec" /> <PerfmonCounter enabled="true" name="\Batch Requests/sec" /> <PerfmonCounter enabled="true" name="\Failed Auto-Params/sec" /> <PerfmonCounter enabled="true" name="\Safe Auto-Params/sec" /> <PerfmonCounter enabled="true" name="\SQL Attention rate" /> <PerfmonCounter enabled="true" name="\SQL Compilations/sec" /> <PerfmonCounter enabled="true" name="\SQL Re-Compilations/sec" /> <PerfmonCounter enabled="true" name="\Unsafe Auto-Params/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:User Settable(User counter 1)"> <PerfmonCounter enabled="true" name="\Query" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:User Settable(User counter 10)"> <PerfmonCounter enabled="true" name="\Query" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:User Settable(User counter 2)"> <PerfmonCounter enabled="true" name="\Query" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:User Settable(User counter 3)"> <PerfmonCounter enabled="true" name="\Query" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:User Settable(User counter 4)"> <PerfmonCounter enabled="true" name="\Query" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:User Settable(User counter 5)"> <PerfmonCounter enabled="true" name="\Query" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:User Settable(User counter 6)"> <PerfmonCounter enabled="true" name="\Query" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:User Settable(User counter 7)"> <PerfmonCounter enabled="true" name="\Query" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:User Settable(User counter 8)"> <PerfmonCounter enabled="true" name="\Query" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:User Settable(User counter 9)"> <PerfmonCounter enabled="true" name="\Query" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Wait Statistics(*)"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Lock waits" /> <PerfmonCounter enabled="true" name="\Log buffer waits" /> <PerfmonCounter enabled="true" name="\Log write waits" /> <PerfmonCounter enabled="true" name="\Memory grant queue waits" /> <PerfmonCounter enabled="true" name="\Network IO waits" /> <PerfmonCounter enabled="true" name="\Non-Page latch waits" /> <PerfmonCounter enabled="true" name="\Page IO latch waits" /> <PerfmonCounter enabled="true" name="\Page latch waits" /> <PerfmonCounter enabled="true" name="\Thread-safe memory objects waits" /> <PerfmonCounter enabled="true" name="\Transaction ownership waits" /> <PerfmonCounter enabled="true" name="\Wait for the worker" /> <PerfmonCounter enabled="true" name="\Workspace synchronization waits" /> </PerfmonObject> <PerfmonObject enabled="true" name="\MSSQL$%s:Workload Group Stats(*)"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Active parallel threads" /> <PerfmonCounter enabled="true" name="\Active requests" /> <PerfmonCounter enabled="true" name="\Avg Disk msec/Read" /> <PerfmonCounter enabled="true" name="\Avg Disk msec/Write" /> <PerfmonCounter enabled="true" name="\Blocked tasks" /> <PerfmonCounter enabled="true" name="\CPU usage %" /> <PerfmonCounter enabled="true" name="\CPU usage % base" /> <PerfmonCounter enabled="true" name="\Disk msec/Read Base" /> <PerfmonCounter enabled="true" name="\Disk msec/Write Base" /> <PerfmonCounter enabled="true" name="\Disk Read Bytes/sec" /> <PerfmonCounter enabled="true" name="\Disk Reads/sec" /> <PerfmonCounter enabled="true" name="\Disk Violations/sec" /> <PerfmonCounter enabled="true" name="\Disk Write Bytes/sec" /> <PerfmonCounter enabled="true" name="\Disk Writes/sec" /> <PerfmonCounter enabled="true" name="\Max request cpu time (ms)" /> <PerfmonCounter enabled="true" name="\Max request memory grant (KB)" /> <PerfmonCounter enabled="true" name="\Query optimizations/sec" /> <PerfmonCounter enabled="true" name="\Queued requests" /> <PerfmonCounter enabled="true" name="\Reduced memory grants/sec" /> <PerfmonCounter enabled="true" name="\Requests completed/sec" /> <PerfmonCounter enabled="true" name="\Suboptimal plans/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\NBT Connection(*)"> <PerfmonCounter enabled="true" name="\Bytes Received/sec" /> <PerfmonCounter enabled="true" name="\Bytes Sent/sec" /> <PerfmonCounter enabled="true" name="\Bytes Total/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\Network Interface(*)"> <PerfmonCounter enabled="true" name="\Bytes Received/sec" /> <PerfmonCounter enabled="true" name="\Bytes Sent/sec" /> <PerfmonCounter enabled="true" name="\Bytes Total/sec" /> <PerfmonCounter enabled="true" name="\Current Bandwidth" /> <PerfmonCounter enabled="true" name="\Output Queue Length" /> <PerfmonCounter enabled="true" name="\Packets Outbound Discarded" /> <PerfmonCounter enabled="true" name="\Packets Outbound Errors" /> <PerfmonCounter enabled="true" name="\Packets Received Discarded" /> <PerfmonCounter enabled="true" name="\Packets Received Errors" /> <PerfmonCounter enabled="true" name="\Packets Received Non-Unicast/sec" /> <PerfmonCounter enabled="true" name="\Packets Received Unicast/sec" /> <PerfmonCounter enabled="true" name="\Packets Received Unknown" /> <PerfmonCounter enabled="true" name="\Packets Received/sec" /> <PerfmonCounter enabled="true" name="\Packets Sent Non-Unicast/sec" /> <PerfmonCounter enabled="true" name="\Packets Sent Unicast/sec" /> <PerfmonCounter enabled="true" name="\Packets Sent/sec" /> <PerfmonCounter enabled="true" name="\Packets/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\Objects"> <PerfmonCounter enabled="true" name="\Events" /> <PerfmonCounter enabled="true" name="\Mutexes" /> <PerfmonCounter enabled="true" name="\Processes" /> <PerfmonCounter enabled="true" name="\Sections" /> <PerfmonCounter enabled="true" name="\Semaphores" /> <PerfmonCounter enabled="true" name="\Threads" /> </PerfmonObject> <PerfmonObject enabled="true" name="\PhysicalDisk(*)"> <PerfmonCounter enabled="true" name="\% Disk Read Time" /> <PerfmonCounter enabled="true" name="\% Disk Time" /> <PerfmonCounter enabled="true" name="\% Disk Write Time" /> <PerfmonCounter enabled="true" name="\% Idle Time" /> <PerfmonCounter enabled="true" name="\Avg. Disk Bytes/Read" /> <PerfmonCounter enabled="true" name="\Avg. Disk Bytes/Transfer" /> <PerfmonCounter enabled="true" name="\Avg. Disk Bytes/Write" /> <PerfmonCounter enabled="true" name="\Avg. Disk Queue Length" /> <PerfmonCounter enabled="true" name="\Avg. Disk Read Queue Length" /> <PerfmonCounter enabled="true" name="\Avg. Disk sec/Read" /> <PerfmonCounter enabled="true" name="\Avg. Disk sec/Transfer" /> <PerfmonCounter enabled="true" name="\Avg. Disk sec/Write" /> <PerfmonCounter enabled="true" name="\Avg. Disk Write Queue Length" /> <PerfmonCounter enabled="true" name="\Current Disk Queue Length" /> <PerfmonCounter enabled="true" name="\Disk Bytes/sec" /> <PerfmonCounter enabled="true" name="\Disk Read Bytes/sec" /> <PerfmonCounter enabled="true" name="\Disk Reads/sec" /> <PerfmonCounter enabled="true" name="\Disk Transfers/sec" /> <PerfmonCounter enabled="true" name="\Disk Write Bytes/sec" /> <PerfmonCounter enabled="true" name="\Disk Writes/sec" /> <PerfmonCounter enabled="true" name="\Split IO/Sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\Process(*)"> <PerfmonCounter enabled="true" name="\% Privileged Time" /> <PerfmonCounter enabled="true" name="\% Processor Time" /> <PerfmonCounter enabled="true" name="\% User Time" /> <PerfmonCounter enabled="true" name="\Creating Process ID" /> <PerfmonCounter enabled="true" name="\Elapsed Time" /> <PerfmonCounter enabled="true" name="\Handle Count" /> <PerfmonCounter enabled="true" name="\ID Process" /> <PerfmonCounter enabled="true" name="\IO Data Bytes/sec" /> <PerfmonCounter enabled="true" name="\IO Data Operations/sec" /> <PerfmonCounter enabled="true" name="\IO Other Bytes/sec" /> <PerfmonCounter enabled="true" name="\IO Other Operations/sec" /> <PerfmonCounter enabled="true" name="\IO Read Bytes/sec" /> <PerfmonCounter enabled="true" name="\IO Read Operations/sec" /> <PerfmonCounter enabled="true" name="\IO Write Bytes/sec" /> <PerfmonCounter enabled="true" name="\IO Write Operations/sec" /> <PerfmonCounter enabled="true" name="\Page Faults/sec" /> <PerfmonCounter enabled="true" name="\Page File Bytes" /> <PerfmonCounter enabled="true" name="\Page File Bytes Peak" /> <PerfmonCounter enabled="true" name="\Pool Nonpaged Bytes" /> <PerfmonCounter enabled="true" name="\Pool Paged Bytes" /> <PerfmonCounter enabled="true" name="\Priority Base" /> <PerfmonCounter enabled="true" name="\Private Bytes" /> <PerfmonCounter enabled="true" name="\Thread Count" /> <PerfmonCounter enabled="true" name="\Virtual Bytes" /> <PerfmonCounter enabled="true" name="\Virtual Bytes Peak" /> <PerfmonCounter enabled="true" name="\Working Set" /> <PerfmonCounter enabled="true" name="\Working Set Peak" /> </PerfmonObject> <PerfmonObject enabled="true" name="\Processor Information(*)"> <PerfmonCounter enabled="true" name="\% C1 Time" /> <PerfmonCounter enabled="true" name="\% C2 Time" /> <PerfmonCounter enabled="true" name="\% C3 Time" /> <PerfmonCounter enabled="true" name="\% DPC Time" /> <PerfmonCounter enabled="true" name="\% Idle Time" /> <PerfmonCounter enabled="true" name="\% Interrupt Time" /> <PerfmonCounter enabled="true" name="\% of Maximum Frequency" /> <PerfmonCounter enabled="true" name="\% Performance Limit" /> <PerfmonCounter enabled="true" name="\% Priority Time" /> <PerfmonCounter enabled="true" name="\% Privileged Time" /> <PerfmonCounter enabled="true" name="\% Privileged Utility" /> <PerfmonCounter enabled="true" name="\% Processor Performance" /> <PerfmonCounter enabled="true" name="\% Processor Time" /> <PerfmonCounter enabled="true" name="\% Processor Utility" /> <PerfmonCounter enabled="true" name="\% User Time" /> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Average Idle Time" /> <PerfmonCounter enabled="true" name="\C1 Transactions/sec" /> <PerfmonCounter enabled="true" name="\C2 Transactions/sec" /> <PerfmonCounter enabled="true" name="\C3 Transactions/sec" /> <PerfmonCounter enabled="true" name="\Clock Interrupts/sec" /> <PerfmonCounter enabled="true" name="\DPC Rate" /> <PerfmonCounter enabled="true" name="\DPCs Queued/sec" /> <PerfmonCounter enabled="true" name="\Idle Break Events/sec" /> <PerfmonCounter enabled="true" name="\Interrupts/sec" /> <PerfmonCounter enabled="true" name="\Parking Status" /> <PerfmonCounter enabled="true" name="\Performance Limit Flags" /> <PerfmonCounter enabled="true" name="\Processor Frequency" /> <PerfmonCounter enabled="true" name="\Processor State Flags" /> </PerfmonObject> <PerfmonObject enabled="true" name="\ProcessorPerformance"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Frequency" /> <PerfmonCounter enabled="true" name="\Percentage" /> <PerfmonCounter enabled="true" name="\Power" /> </PerfmonObject> <PerfmonObject enabled="true" name="\XTP Cursors(*)"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Cursor deletes/sec" /> <PerfmonCounter enabled="true" name="\Cursor inserts/sec" /> <PerfmonCounter enabled="true" name="\Cursor scans started/sec" /> <PerfmonCounter enabled="true" name="\Cursor unique violations/sec" /> <PerfmonCounter enabled="true" name="\Cursor updates/sec" /> <PerfmonCounter enabled="true" name="\Cursor write conflicts/sec" /> <PerfmonCounter enabled="true" name="\Dusty corner scan retries/sec (user-issued)" /> <PerfmonCounter enabled="true" name="\Expired rows removed/sec" /> <PerfmonCounter enabled="true" name="\Expired rows touched/sec" /> <PerfmonCounter enabled="true" name="\Rows returned/sec" /> <PerfmonCounter enabled="true" name="\Rows touched/sec" /> <PerfmonCounter enabled="true" name="\Tentatively-deleted rows touched/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\XTP Garbage Collection(*)"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Dusty corner scan retries/sec (GC-issued)" /> <PerfmonCounter enabled="true" name="\Main GC work items/sec" /> <PerfmonCounter enabled="true" name="\Parallel GC work items/sec" /> <PerfmonCounter enabled="true" name="\Rows processed/sec" /> <PerfmonCounter enabled="true" name="\Rows processed/sec (first in bucket and removed)" /> <PerfmonCounter enabled="true" name="\Rows processed/sec (first in bucket)" /> <PerfmonCounter enabled="true" name="\Rows processed/sec (marked for unlink)" /> <PerfmonCounter enabled="true" name="\Rows processed/sec (no sweep needed)" /> <PerfmonCounter enabled="true" name="\Sweep expired rows removed/sec" /> <PerfmonCounter enabled="true" name="\Sweep expired rows touched/sec" /> <PerfmonCounter enabled="true" name="\Sweep expiring rows touched/sec" /> <PerfmonCounter enabled="true" name="\Sweep rows touched/sec" /> <PerfmonCounter enabled="true" name="\Sweep scans started/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\XTP Phantom Processor(*)"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Dusty corner scan retries/sec (Phantom-issued)" /> <PerfmonCounter enabled="true" name="\Phantom expired rows removed/sec" /> <PerfmonCounter enabled="true" name="\Phantom expired rows touched/sec" /> <PerfmonCounter enabled="true" name="\Phantom expiring rows touched/sec" /> <PerfmonCounter enabled="true" name="\Phantom rows touched/sec" /> <PerfmonCounter enabled="true" name="\Phantom scans started/sec" /> </PerfmonObject> <PerfmonObject enabled="true" name="\XTP Transactions(*)"> <PerfmonCounter enabled="true" name="\*" /> <PerfmonCounter enabled="true" name="\Cascading aborts/sec" /> <PerfmonCounter enabled="true" name="\Commit dependencies taken/sec" /> <PerfmonCounter enabled="true" name="\Read-only transactions prepared/sec" /> <PerfmonCounter enabled="true" name="\Save point refreshes/sec" /> <PerfmonCounter enabled="true" name="\Save point rollbacks/sec" /> <PerfmonCounter enabled="true" name="\Save points created/sec" /> <PerfmonCounter enabled="true" name="\Transaction validation failures/sec" /> <PerfmonCounter enabled="true" name="\Transactions aborted by user/sec" /> <PerfmonCounter enabled="true" name="\Transactions aborted/sec" /> <PerfmonCounter enabled="true" name="\Transactions created/sec" /> </PerfmonObject> </PerfmonCounters> </PerfmonCollector> </MachineCollectors> <Instances> <Instance name="MSSQLSERVER" user="" windowsauth="true" ssver="11"> <Collectors> <SqldiagCollector enabled="false" startup="false" shutdown="false" /> <BlockingCollector shutdown="false" startup="false" maxfilesize="true" /> <ProfilerCollector enabled="true" maxfilesize="500" filecount="50" pollinginterval="5"> <Events> <EventType name="Broker" enabled="true"> <Event name="Broker:Connection" enabled="true" id="138" /> <Event name="Broker:Corrupted Message" enabled="true" id="161" /> <Event name="Broker:Forwarded Message Dropped" enabled="true" id="140" /> <Event name="Broker:Message Undeliverable" enabled="true" id="160" /> </EventType> <EventType name="CLR" enabled="true"> <Event name="Assembly Load" enabled="true" id="196" /> </EventType> <EventType name="Cursors" enabled="true"> <Event name="CursorClose" enabled="true" id="78" /> <Event name="CursorExecute" enabled="true" id="74" /> <Event name="CursorImplicitConversion" enabled="true" id="76" /> <Event name="CursorOpen" enabled="true" id="53" /> <Event name="CursorPrepare" enabled="true" id="70" /> <Event name="CursorRecompile" enabled="true" id="75" /> <Event name="CursorUnprepare" enabled="true" id="77" /> </EventType> <EventType name="Database" enabled="true"> <Event name="Data File Auto Grow" enabled="true" id="92" /> <Event name="Data File Auto Shrink" enabled="true" id="94" /> <Event name="Database Mirroring State Change" enabled="true" id="167" /> <Event name="Log File Auto Grow" enabled="true" id="93" /> <Event name="Log File Auto Shrink" enabled="true" id="95" /> </EventType> <EventType name="Errors and Warnings" enabled="true"> <Event name="Attention" enabled="true" id="16" /> <Event name="Background Job Error" enabled="true" id="193" /> <Event name="Bitmap Warning" enabled="true" id="212" /> <Event name="EventLog" enabled="true" id="21" /> <Event name="Exception" enabled="true" id="33" /> <Event name="Exchange Spill Event" enabled="true" id="127" /> <Event name="Execution Warnings" enabled="true" id="67" /> <Event name="Hash Warning" enabled="true" id="55" /> <Event name="Missing Column Statistics" enabled="true" id="79" /> <Event name="Missing Join Predicate" enabled="true" id="80" /> <Event name="Sort Warnings" enabled="true" id="69" /> <Event name="User Error Message" enabled="true" id="162" /> </EventType> <EventType name="Full text" enabled="true"> <Event name="FT:Crawl Aborted" enabled="true" id="157" /> </EventType> <EventType name="Locks" enabled="true"> <Event name="Lock:Escalation" enabled="true" id="60" /> <Event name="Lock:Timeout (timeout &gt; 0)" enabled="true" id="189" /> </EventType> <EventType name="OLEDB" enabled="true"> <Event name="OLEDB Errors" enabled="true" id="61" /> </EventType> <EventType name="Performance" enabled="true"> <Event name="Auto Stats" enabled="true" id="58" /> <Event name="Plan Guide Successful" enabled="true" id="217" /> <Event name="Showplan XML For Query Compile" enabled="true" id="168" /> <Event name="Showplan XML Statistics Profile" enabled="true" id="146" /> </EventType> <EventType name="Progress Report" enabled="true"> <Event name="Progress Report: Online Index Operation" enabled="true" id="190" /> </EventType> <EventType name="Security Audit" enabled="true"> <Event name="Audit Backup/Restore Event" enabled="true" id="115" /> <Event name="Audit Broker Conversation" enabled="true" id="158" /> <Event name="Audit Broker Login" enabled="true" id="159" /> <Event name="Audit DBCC Event" enabled="true" id="116" /> <Event name="Audit Login" enabled="true" id="14" /> <Event name="Audit Login Failed" enabled="true" id="20" /> <Event name="Audit Logout" enabled="true" id="15" /> </EventType> <EventType name="Server" enabled="true"> <Event name="Mount Tape" enabled="true" id="195" /> <Event name="Server Memory Change" enabled="true" id="81" /> <Event name="Trace File Close" enabled="true" id="150" /> </EventType> <EventType name="Sessions" enabled="true"> <Event name="ExistingConnection" enabled="true" id="17" /> <Event name="PreConnect:Completed" enabled="true" id="216" /> <Event name="PreConnect:Starting" enabled="true" id="215" /> </EventType> <EventType name="Stored Procedures" enabled="true"> <Event name="RPC Output Parameter" enabled="true" id="100" /> <Event name="RPC:Completed" enabled="true" id="10" /> <Event name="RPC:Starting" enabled="true" id="11" /> <Event name="SP:CacheMiss" enabled="true" id="34" /> <Event name="SP:CacheRemove" enabled="true" id="36" /> <Event name="SP:Completed" enabled="true" id="43" /> <Event name="SP:Recompile" enabled="true" id="37" /> <Event name="SP:Starting" enabled="true" id="42" /> <Event name="SP:StmtCompleted" enabled="true" id="45" /> <Event name="SP:StmtStarting" enabled="true" id="44" /> </EventType> <EventType name="Transactions" enabled="true"> <Event name="DTCTransaction" enabled="true" id="19" /> <Event name="SQLTransaction" enabled="true" id="50" /> <Event name="TM: Begin Tran completed" enabled="true" id="182" /> <Event name="TM: Commit Tran completed" enabled="true" id="186" /> <Event name="TM: Promote Tran completed" enabled="true" id="184" /> <Event name="TM: Rollback Tran completed" enabled="true" id="188" /> <Event name="TM: Rollback Tran starting" enabled="true" id="187" /> <Event name="TM: Save Tran completed" enabled="true" id="192" /> </EventType> <EventType name="TSQL" enabled="true"> <Event name="Prepare SQL" enabled="true" id="71" /> <Event name="SQL:BatchCompleted" enabled="true" id="12" /> <Event name="SQL:BatchStarting" enabled="true" id="13" /> <Event name="SQL:StmtCompleted" enabled="true" id="41" /> <Event name="SQL:StmtRecompile" enabled="true" id="166" /> <Event name="SQL:StmtStarting" enabled="true" id="40" /> <Event name="Unprepare SQL" enabled="true" id="73" /> </EventType> </Events> </ProfilerCollector> <CustomDiagnostics> <CustomGroup name="MSInfo" enabled="true"> <CustomTask enabled="true" groupname="MSInfo" taskname="MSINFO32" type="Utility" point="Startup" wait="OnlyOnShutdown" cmd="get_msinfo.cmd %server% &quot;%output_path%&quot;" pollinginterval="0" /> </CustomGroup> <CustomGroup name="My Custom Collector" enabled="true"> <CustomTask enabled="true" groupname="My Custom Collector" taskname="test.sql" type="TSQL_Script" point="Startup" wait="No" cmd="test.sql" pollinginterval="0" /> </CustomGroup> <CustomGroup name="SQL Base" enabled="true"> <CustomTask enabled="true" groupname="SQL Base" taskname="ClearOrphanedBLGs" type="Utility" point="Startup" wait="No" cmd="ClearOrphanedBLGs.cmd %appname% &quot;%output_path%&quot; &gt; &quot;%internal_output_name%.OUT&quot; 2&gt;&amp;1" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="Errorlog.0" type="Utility" point="Shutdown" wait="OnlyOnShutdown" cmd="collecterrorlog.cmd %server_instance% 0 &gt; &quot;%output_name%.TXT&quot; 2&gt;&amp;1" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="Errorlog.1" type="Utility" point="Shutdown" wait="OnlyOnShutdown" cmd="collecterrorlog.cmd %server_instance% 1 &gt; &quot;%output_name%.TXT&quot; 2&gt;&amp;1" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="Errorlog.2" type="Utility" point="Shutdown" wait="OnlyOnShutdown" cmd="collecterrorlog.cmd %server_instance% 2 &gt; &quot;%output_name%.TXT&quot; 2&gt;&amp;1" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="Errorlog.3" type="Utility" point="Shutdown" wait="OnlyOnShutdown" cmd="collecterrorlog.cmd %server_instance% 3 &gt; &quot;%output_name%.TXT&quot; 2&gt;&amp;1" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="Errorlog.4" type="Utility" point="Shutdown" wait="OnlyOnShutdown" cmd="collecterrorlog.cmd %server_instance% 4 &gt; &quot;%output_name%.TXT&quot; 2&gt;&amp;1" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="Errorlog.5" type="Utility" point="Shutdown" wait="OnlyOnShutdown" cmd="collecterrorlog.cmd %server_instance% 5 &gt; &quot;%output_name%.TXT&quot; 2&gt;&amp;1" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="Errorlog.6" type="Utility" point="Shutdown" wait="OnlyOnShutdown" cmd="collecterrorlog.cmd %server_instance% 6 &gt; &quot;%output_name%.TXT&quot; 2&gt;&amp;1" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="Errorlog_All" type="Utility" point="Shutdown" wait="OnlyOnShutdown" cmd="collecterrorlog.cmd %server_instance% &gt; &quot;%output_name%.TXT&quot; 2&gt;&amp;1" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="MiscPssdiagInfo" type="TSQL_Script" point="Startup" wait="OnlyOnShutdown" cmd="MiscPssdiagInfo.sql" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="Power Plan" type="Utility" point="Startup" wait="OnlyOnShutdown" cmd="cscript.exe PowerPlan.VBS &gt; &quot;%output_name%.txt&quot; 2&gt;&amp;1" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="Power Plan" type="Utility" point="Startup" wait="OnlyOnShutdown" cmd="cscript.exe PowerPlan.VBS &gt; &quot;%output_name%.txt&quot; 2&gt;&amp;1" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="Profiler Traces" type="TSQL_Script" point="Startup" wait="OnlyOnShutdown" cmd="Profiler Traces.sql" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="RestoreTraceFlagOrigValues" type="TSQL_Command" point="Shutdown" wait="No" cmd="EXEC tempdb.dbo.sp_diag_trace_flag_restore '%appname%'" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="TraceFlagHelperProcs" type="TSQL_Script" point="Startup" wait="Yes" cmd="TraceFlagHelperProcs.tem" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="Windows 2008 or R2 cluster log" type="Utility" point="Shutdown" wait="OnlyOnShutdown" cmd="powershell -command &quot;&amp; {cluster log /g /Span:10080 /Copy:'%output_path%'}&quot;" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Base" taskname="Windows Hotfix List" type="Utility" point="Startup" wait="No" cmd="powershell.exe -ExecutionPolicy Bypass .\SqlBaseUtil.ps1 GetWindowsHotfix &gt; &quot;%output_name%.OUT&quot; 2&gt;&amp;1" pollinginterval="0" /> </CustomGroup> <CustomGroup name="SQL Memory Error" enabled="true"> <CustomTask enabled="true" groupname="SQL Memory Error" taskname="SQL Memory Error" type="TSQL_Script" point="Startup" wait="No" cmd="SQL_Server_Mem_Stats.sql" pollinginterval="0" /> </CustomGroup> <CustomGroup name="SQL Server Perf Stats" enabled="true"> <CustomTask enabled="true" groupname="SQL Server Perf Stats" taskname="Perf Stats " type="TSQL_Script" point="Startup" wait="No" cmd="SQL Server Perf Stats.sql" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Server Perf Stats" taskname="Perf Stats Snapshot" type="TSQL_Script" point="Startup" wait="OnlyOnShutdown" cmd="SQL Server Perf Stats Snapshot.sql" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Server Perf Stats" taskname="Perf Stats Snapshot" type="TSQL_Script" point="shutdown" wait="OnlyOnShutdown" cmd="SQL Server Perf Stats Snapshot.sql" pollinginterval="0" /> <CustomTask enabled="true" groupname="SQL Server Perf Stats" taskname="Top CPU Query Show Plan XML at shutdown" type="Utility" point="shutdown" wait="Yes" cmd="TopCPUQueryShowPlanXML.bat 5 %output_name% %server_instance%" pollinginterval="0" /> </CustomGroup> <CustomGroup name="XEvent " enabled="true"> <CustomTask enabled="true" groupname="XEvent " taskname="Creating Event Session" type="TSQL_Script" point="Startup" wait="Yes" cmd="pssdiag_xevent.sql" pollinginterval="0" /> <CustomTask enabled="true" groupname="XEvent " taskname="Add File Target" type="TSQL_Command" point="Startup" wait="Yes" cmd="alter EVENT SESSION [pssdiag_xevent] ON SERVER ADD TARGET package0.event_file(SET filename=N'%output_path%%server%_%instance%_pssdiag_xevent.xel', max_file_size=(500), max_rollover_files=(50));" pollinginterval="0" /> <CustomTask enabled="true" groupname="XEvent " taskname="Starting Event Session" type="TSQL_Command" point="Startup" wait="No" cmd="ALTER EVENT SESSION [pssdiag_xevent] ON SERVER STATE = start;" pollinginterval="0" /> <CustomTask enabled="true" groupname="XEvent " taskname="Stopping Event Session" type="TSQL_Command" point="Shutdown" wait="No" cmd="ALTER EVENT SESSION [pssdiag_xevent] ON SERVER STATE = stop;DROP EVENT SESSION [pssdiag_xevent] ON SERVER;" pollinginterval="0" /> </CustomGroup> </CustomDiagnostics> </Collectors> </Instance> </Instances> </Machine> </Machines> </Collection> </dsConfig>

PSSDIAG data loading to SQL NEXUS

PSSDIAG data loading through SQL NEXUS is taking too much time..

Process : Post-load data clean up
Procedure : "ReadTrace.usp_perfromPostLoadFixups"
Statement : Update ReadTrace.TableStatements

Is there any workaround for quick data loading?

Add new sql 2019 perfmon counters

We need to add following sql 2019 perfmon counters

SQLServer:Databases Active parallel redo threads
SQLServer:Databases PVS in-row diff generated/sec
SQLServer:Databases PVS in-row diff retrieved/sec
SQLServer:Databases PVS off-row pages allocated/sec
SQLServer:Databases PVS off-row pages deleted/sec
SQLServer:Databases PVS off-row record generated/sec
SQLServer:Databases PVS off-row record retrieved/sec
SQLServer:Databases WPR add lsn bucket miss
SQLServer:Databases WPR bucket swaps
SQLServer:Databases WPR stale check bucket miss

add Task_Address from dm_OS_Tasks to -- requests --

Would it be possible to add the DM_OS_Tasks Task Address value to the -- requests -- snapshot in the Perf Stats_Startup report?
If we have an error that lists an address for an owning task, such as in a buffer latch timeout message, we could possibly leverage that report to look back in time to find the session ID/query with that task address.

MSINFO hangs pssdiag collection when run as service

Report from Clinton Wong:

Had an interesting issue when running PSSDIAG on my customer’s machine for long-term capture. Found that it hadn’t been collecting properly as it hung on startup and the cause was MSINFO caused it to hang.

Pretty sure that option is ON by default and it wasn’t me screwing it up, but this might catch others when running PSSDIAG as a service. Wanted to just let you know in case you start seeing others report it. (Don’t recall this happening in the past :()

Error on SQL 2016 SP1

when running this version(13.0.1600.32 Build Date: 06/01/2017) got following error on SQL 2016 Sp1:
SQLDIAG There are no instances of version 13 on this computer

the Pssdiag blocks other processes in SQL Server

Hi admin, I use DiagManager13.0.1600.32 to generate the pssdiag file. please see the attachment for configuration(this configuration file is xml file but I cannot upload xml file here , so I change the suffix of this file to be txt).
The target SQL server is SQL 2014. When I begin to run Pssdiag.cmd, the CPU usage begin to drop(from 60% drop to 20%);after I stop Pssdiag, the CPU usage begin to up (from 20% to 70). And during the running of Pssdiag, the data loading of SQL Server is blocked until Pssidiag is stopped.

previously I only know Pssdiag can result in high CPU usage; it is the first time that I see Pssdiag can make CPU usage down. And I have not encounter the blocking issue result from Pssdiag before.

pssdiag.txt

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.