Real-time Grafana DashboardsComing soon. Subscribe for updates.


SQL Server Monitoring Framework


Open Source and free. Because every environment is a production environment for someone.


Become a Patron!
Free SQL Server Monitor Power BI Dashboard DEMO 
Performance data logger written in T-SQL
  • Power BI Dashboard for data analysis and recommendations​
  • Driven by SQL Agent or Windows Task Scheduler​
  • Local data collection to a local database​
  • Lightweight with minimal overhead​
  • Designed for long term storage​
  • Decentralised, every instance monitors itself​
  • Perfect for large environments.​
  • No limit on number of monitored instances​
  • Optional central repository for improved reporting​

Simple, one-line installation with dbatools

Install-DbaSqlWatch -SqlInstance YourSQL1, YourSQL2
        Offline installation methods available      
        Deploy DacPac in SSMS or directly from Visual Studio        
        <a href="https://docs.sqlwatch.io/sqlwatch-database/installation" role="button">
                    Read more
                </a>
                                    <img width="428" height="600" src="https://sqlwatch.io/wp-content/uploads/2020/04/12fba660-8b74-11e9-8fc2-ffa4d4df6194.png?x96985" alt="" srcset="https://sqlwatch.io/wp-content/uploads/2020/04/12fba660-8b74-11e9-8fc2-ffa4d4df6194.png 428w, https://sqlwatch.io/wp-content/uploads/2020/04/12fba660-8b74-11e9-8fc2-ffa4d4df6194-214x300.png 214w" sizes="(max-width: 428px) 100vw, 428px" />                                           
                                        <a href="https://sqlwatch.io/wp-content/uploads/2020/01/Screenshot-2020-01-02-at-23.32.57.png?x96985" data-elementor-open-lightbox="yes" data-elementor-lightbox-title="Screenshot 2020-01-02 at 23.32.57">
                        <img width="1024" height="690" src="https://sqlwatch.io/wp-content/uploads/2020/01/Screenshot-2020-01-02-at-23.32.57-1024x690.png?x96985" alt="Azure Log Monitor Workbook" srcset="https://sqlwatch.io/wp-content/uploads/2020/01/Screenshot-2020-01-02-at-23.32.57-1024x690.png 1024w, https://sqlwatch.io/wp-content/uploads/2020/01/Screenshot-2020-01-02-at-23.32.57-300x202.png 300w, https://sqlwatch.io/wp-content/uploads/2020/01/Screenshot-2020-01-02-at-23.32.57-768x517.png 768w, https://sqlwatch.io/wp-content/uploads/2020/01/Screenshot-2020-01-02-at-23.32.57-1536x1035.png 1536w, https://sqlwatch.io/wp-content/uploads/2020/01/Screenshot-2020-01-02-at-23.32.57-2048x1380.png 2048w" sizes="(max-width: 1024px) 100vw, 1024px" />                             </a>
        Push collected data to Azure Log Monitor        
        Leverage Azure Workbooks for reporting      
        Reduce local footprint      
        <a href="/sql-server-azure-log-monitor/" role="button">
                    Read more
                </a>
        Customisable alerts and notifications       
  • Customisable alerts. You decide what alerts you’re getting
  • Customisable templates. You can change what the alerts look like: Plain text, HTML, JSON, XML
  • PowerShell based actions for almost limitless integrations
  • Send Push notifications to mobile phones
  • Run executables and SQL Commands
  • Webhooks integration
  • Send Push notifications to messaging platforms: Slack, MS Teams
  • Send Emails
        <a href="/sql-server-free-notifications" role="button">
                    Read more
                </a>
                                        <a href="https://sqlwatch.io/wp-content/uploads/2020/01/assets-LamHUpIpVXoBUUDZZpO-LtpxKSdc3ZY73gaxWit-Ltpyv7HP8uGoPf8B7og-image.png?x96985" data-elementor-open-lightbox="yes" data-elementor-lightbox-title="assets--LamHUpIpVXoBUUDZZpO--LtpxKSdc3ZY73gaxWit--Ltpyv7HP8uGoPf8B7og-image">
                        <img width="656" height="958" src="https://sqlwatch.io/wp-content/uploads/2020/01/assets-LamHUpIpVXoBUUDZZpO-LtpxKSdc3ZY73gaxWit-Ltpyv7HP8uGoPf8B7og-image.png?x96985" alt="SQLWATCH Low Disk Alert with Report notification" srcset="https://sqlwatch.io/wp-content/uploads/2020/01/assets-LamHUpIpVXoBUUDZZpO-LtpxKSdc3ZY73gaxWit-Ltpyv7HP8uGoPf8B7og-image.png 656w, https://sqlwatch.io/wp-content/uploads/2020/01/assets-LamHUpIpVXoBUUDZZpO-LtpxKSdc3ZY73gaxWit-Ltpyv7HP8uGoPf8B7og-image-205x300.png 205w" sizes="(max-width: 656px) 100vw, 656px" />                               </a>
        <h2>How it works</h2>       
            <h2>
                1. Collect
            </h2>
                            <p>Each server collects its own, pre-defined or user-defined, high-granularity performance metrics.
            <h2>
                2. Store
            </h2>
                            Collected data is written to a local database, optimised for long term storage. 
            <h2>
                3. Check
            </h2>
                            Checks run periodically to make sure all metrics are within the required thresholds.
            <h2>
                4. Action
            </h2>
                            Out of bound checks can send notifications or perform arbitrary remedial or integration actions.
            <h2>
                5. Report
            </h2>
                            Analyse historical performance data using the provided Power BI Dashboard.
            <h2>
                6. Archive
            </h2>
                            Automatically aggregates and archives high granularity data for long term storage.
        <h2>FAQ</h2>        
                                            <a href="">What is it?</a>
                SQLWATCH is a data logger. It logs performance data, disk utilisation, agent history, index performance and few other important metrics. It also uses extended events to capture “interesting” workload and transactions, such as long queries or blocking chains.
Without a doubt it is something a lot of DBAs have done in their careers to support their systems. A lot of you will have some scheduled agent jobs that collect certain data or even SSIS packages that collect data from across the entire estate. The problem with you doing it yourself is that you then have to support it :) Instead, we can do it together, share the knowledge and experience with the help of the fantastic SQL Server community. Is it free? Yes, SQLWATCH is completely free under MIT license. Why T-SQL and not Windows Service During my career I have come across a large number of enterprise environments that were not allowed to install third party executables but DBAs were often free to install anything within the SQL Server scope. SQLWATCH is essentially a SQL Server database with some agent jobs that collect data and completely within the remit of DBAs. It may not be the most efficient way of collecting data. For example, a .NET service would offer multithreading and the ability to collect from remote servers, but being written in T-SQL gives additional benefit of being completely transparent and easy to fix, debug and expand by any DBA or SQL Developer. If there is a enough demand and support from the SQL Server community I may consider an option for a .NET service. Does it replace my paid monitoring solution? SQLWATCH was born as an ad-hoc monitoring solution I was using during end to end performance testing and tuning and was not designed to provide all the features that paid monitoring solution provide. However, it enables DBAs to monitor all the environments not covered by their enterprise monitoring license such as development, QA, DR or even Production, if you have no other monitoring. What do I get out of it? It’s my way to give back to the SQL Community, I am not looking for anything in exchange but you can buy me a coffee if you like: https://www.buymeacoffee.com/marcingminski

Getting Started


The easiest way to install SQLWATCH is to use dbatools:


Install-DbaSqlWatch -SqlInstance SQLSERVER1,SQLSERVER2,SQLSERVER3 -Database SQLWATCH Check our documentation for requirements, architecture and other methods to install SQLWATCH
        <h2>Support</h2>        
    <p style="text-align: center;">If you need help, please check our <a href="https://docs.sqlwatch.io">documentation</a> first. If you do not find what you are looking for, or if you think there is a bug, please check <a href="https://github.com/marcingminski/sqlwatch/issues">GitHub Issues</a>. Alternatively we are also getting started with a <a href="https://sqlwatch.discourse.group/">user forum</a>. If you are still facing issues and want to talk to me, you can find us on <a href="https://twitter.com/sqlwatch">Twitter</a>, or our <a href="https://dbatools.io/slack/">Slack Channel</a> where you can also find other SQLWATCHers. </p>      
                        <a href="https://sqlcommunity.slack.com/messages/CCCETQBFZ" target="_blank" rel="noopener noreferrer">      
    </a>                        
                        <a href="https://meta.sqlwatch.io" target="_blank" rel="noopener noreferrer">       
    </a>                        
                        <a href="https://twitter.com/sqlwatch" target="_blank" rel="noopener noreferrer">       
    </a>                        
                        <a href="https://www.youtube.com/c/SQLWATCH" target="_blank" rel="noopener noreferrer">     
    </a>                        
                        <a href="https://github.com/marcingminski/sqlwatch/issues" target="_blank" rel="noopener noreferrer">       
    </a>                        
    <p>Slack is a collaboration platform (similar to the good old IRC) where the SQL Community has its own place. It is free to join but you will require an invite. The Community is managed by fantastic Chrissy LeMaire from <b>dbatools</b> and you can obtain an invite on their website: <a href="https://dbatools.io/slack/" data-wplink-edit="true">https://dbatools.io/slack/</a></p>      
        Used by:        
    [elementor-template id="2753"]