skip to main content
Power BI
    • What is Power BI
    • Why Power BI
    • Customer stories
    • Data visuals
    • Security
    • Power BI Desktop
    • Power BI Pro
    • Power BI Premium
    • Power BI Mobile
    • Power BI Embedded
    • Power BI Report Server
  • Pricing
    • Azure + Power BI
    • Microsoft 365 + Power BI
      • Energy
      • Healthcare
      • Manufacturing
      • Media
      • Retail
    • For analysts
    • For IT
      • Overview
      • Embedded analytics
      • Power BI visuals
      • Automation
      • Documentation
      • Community
    • Overview
    • Find consulting services
    • Partner showcase
    • Find a partner
    • Become a partner
    • Instructor-led training
    • Getting started
      • Overview
      • Online workshops
      • Self-guided learning
      • Webinars
      • Documentation
      • Roadmap
      • Overview
      • Issues
      • Give feedback
    • Blog
    • Business intelligence topics
    • Overview
    • Forums
    • Galleries
    • Submit ideas
    • Events
    • User groups
    • Community blog
    • Register
    • ·
    • Sign in
    • ·
    • Help
    Go To
    • Galleries
    • Community Connections & How-To Videos
    • COVID-19 Data Stories Gallery
    • Themes Gallery
    • Data Stories Gallery
    • R Script Showcase
    • Webinars and Video Gallery
    • Quick Measures Gallery
    • 2021 MSBizAppsSummit Gallery
    • 2020 MSBizAppsSummit Gallery
    • 2019 MSBizAppsSummit Gallery
    • Events
    cancel
    Turn on suggestions
    Auto-suggest helps you quickly narrow down your search results by suggesting possible matches as you type.
    Showing results for 
    Search instead for 
    Did you mean: 
    • Microsoft Power BI Community
    • Galleries
    • Data Stories Gallery
    • Re: SSIS Catalog DB Dashboard

    Re: SSIS Catalog DB Dashboard

    10-29-2019 14:18 PM - last edited 10-29-2019 14:19 PM

    stretcharm
    Memorable Member
    4790 Views
    LinkedIn LinkedIn Facebook Facebook Twitter Twitter
    stretcharm
    stretcharm Memorable Member
    Memorable Member
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    SSIS Catalog DB Dashboard

    ‎09-03-2017 01:21 PM

    Hi,

    This is not so much a Data Story but a template for a dashboard for looking at your own SSIS activity.

    I use SSIS extensively with my job and over the years have used various tools to help me manage the packages and triage issues.
    These include my own SSIS logs, the out of the box SSMS reports, Jamie Thompson's report pack and a number of SSIS catalog queries.

    I had a quite good single query SSIS PowerBI Dashboard, but it was slow on large catalogs and limited in its use.

    I started working on new dashboard that provided all of the features from all my past tools and around the time I saw a post from Chris Schmidt (link below) and so decided to use this as a starting point.

    My dashboard is still not finished, but after lots of iterations I think it's going to be useful for others who need to monitor and understand what their SSIS packages are doing.

     

    I first posted this a in 2017 and I've just given it an overhaul to support some of the new feature now supported by the August 2018 Desktop & Report server versions. Please give it a try and let me know if you spot any problems or things that could be improved.


    I bring in and summarise the data is at a variety of levels

    SSISDB_Dashboard_v1_03_Summary-Summary2.PNG

    Execution (Execution & Execution Summary) The Package that is Executed First which I've named RootPackageName. This includes the Project & Folder
    Package (Executable Package Stats) Package Summary. I group Packages by Types e.g. Master/Dimension/Fact/Stage/PostProcess. You can customised these in the PackageTypes Table. Click Advanced Editor to change it.
    Executable (Executable Stats) Items inside the Package e.g. Tasks/Data Flows/Sequence. I also call this level Package Steps
    I categorise packages and task into types using a keyword lookup. e.g. Package starting Fact for loading Fact tables.

    The Task type names are based on common SSIS naming conventions.

     

    This dashboard also provides details of any package errors and maps them to the Microsoft IS Error Reference Names.

    Individual Executions can be viewed as a text based Gantt chart or as a matrix of executions by time slices.

     

    SSISDB_Dashboard_v1_00_Summary-ExecutionList.PNGSSISDB_Dashboard_v1_00_Execution-Gantt.PNGSSISDB_Dashboard_v1_00_Execution-ExecutionSummary.PNGSSISDB_Dashboard_v1_00_OverTime-StepsOverTime.PNG

    Finally I extracted the Hierarchy from the execution paths to make a Network diagram and Sankey to visualise the structure and levels in an SSIS project.

     

    SSISDB_Dashboard_v1_00_Network-Sankey.PNG

    Whilst developing this dashboard I managed to combine and try out a number PowerBI techniques such as;

    Dax Measure to display a Gantt chart (Based on Chris Webb's Star Ratings)
    Turn Package Paths into a Network diagram & Sankey Diagram
    Scatter Chart to show hour and day matrix
    Mini Gantt Timeline with Matrix
    Mini Gantt Timeline with Scatter Chart
    Dax Tables for Summary data
    Vlookup function to use Package names to provide a type. This can do contains matches and use Start and End Indicators.
    M Language tables for reference data
    Parameterised SQL to Configure the Days to Load
    Standard Deviation for tolerances.

    Bookmarks & Selections

    Report Tooltips


    I've tried to keep the custom visuals to a minimum but I have used Sankey/Network Navigator as well as the OKViz Bullet and Sparklines.
     
    The PowerBI is blank with that needs the server parameter setting to your SSIS db server before applying the changes and granting permissions.

    The next network and rows can take a while to load wiht a large Catalog db so I have a small version that excludes these.

    Templates and sample screen shots are available here https://github.com/stretcharm/SSIS-DB-Dashboard

     

    Release Notes

    v1.00   

    Improved query on Exectutions and Executables

    Added Include fields for the Package types to configure the Master & Package Page filtering.
    Edit PackageTypesUse Query to configure.

    Changed Package filters

    Add Date, Start, Execution ID Hierarchy to the Master and Package Pages

    Added Preserve Layers Bookmark to help avoid window coming to the front

    Remove Optional Job Server Code
    Add Icon Ribbon and Help Page.
    Minor Fixes

     


    Thanks to the providers of the following pages that I've used to help in the making of this dashboard.

    https://blogs.msdn.microsoft.com/sql_pfe_blog/2017/04/18/ssisdb-reporting-with-power-bi/
    Chris Schmidt

    https://www.excelguru.ca/blog/2015/01/28/creating-a-vlookup-function-in-power-query/
    @KenPuls

    Star Ratings Quick Measure
    http://community.powerbi.com/t5/Quick-Measures-Gallery/Star-Ratings/m-p/166903#M12

    @cwebb

    https://ssisreportingpack.codeplex.com/
    Jamie Thomson

    Lots of Dax help and great OK Vis PowerBI Visualisations
    http://www.sqlbi.com/

    SSIS Catalog DB
    https://docs.microsoft.com/en-us/sql/integration-services/service/ssis-catalog

    Reza Rad's Article on the SSIS Catalog
    http://www.rad.pasfu.com/index.php?/archives/75-SSIS-Catalog-Part-3-Folder-Hierarchy;-Folder,-Projec...
    DB Diagram
    http://www.rad.pasfu.com/ssis/ssiscatalogpart3/5.png

    SSIS Error Codes
    https://docs.microsoft.com/en-us/sql/integration-services/integration-services-error-and-message-ref...

     

    Enjoy

     

    Phil

     

     

    Follow me on twitter https://twitter.com/StretchArm1 for updates


    Other gallery entries

    PowerBI/SQL Server and Microsoft Business Application Related YouTube Videos
    https://community.powerbi.com/t5/Data-Stories-Gallery/PowerBI-SQL-Server-and-Microsoft-Business-Appl...)

    SQL Saturday Sessions https://community.powerbi.com/t5/Data-Stories-Gallery/Pass-SQLSaturday-Dashboard/m-p/489529#M2153

    Microsoft Bus App Summit & SQL Bits videos

    https://community.powerbi.com/t5/Data-Stories-Gallery/Search-Microsoft-based-Business-Application-vi...

    and PowerBI Custom Visual

    https://community.powerbi.com/t5/Data-Stories-Gallery/PowerBI-Custom-Visuals/td-p/724185

    Most code is also here https://github.com/stretcharm

     

     

     

     

    eyJrIjoiZDM0N2NmMjMtZmE2NS00MDE1LWJkOWQtZmFmZmZkMzI4ZDBkIiwidCI6ImEwYTcyYzIzLTdlMWEtNGYxOC05NDU4LTlhNzUyYTEzMTg1NCJ9

    Preview file
    93 KB
    SSISDB_Dashboard v1.03 Blank.pbix
    Labels:
    • Labels:
    • How To
    • Other
    • Technology
    Message 1 of 59
    48,476 Views
    20
    Reply
    • All forum topics
    • Previous Topic
    • Next Topic
    stretcharm
    stretcharm Memorable Member
    Memorable Member
    In response to jdrazkowski
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎07-19-2018 09:14 AM

    It's showing the Package Durations and Start time/End Times in slices of 15 minutes. So it's a bit like a visual gantt.

    The start is reversed so the scatter flows downwards over time. 

     

    Below is a sample that shows -6 = 6am to -10 =10am and on the x axis 6.5 = 6:30am and 9.5= 9:30am

    Size of the bubbles are durations.

    You can click the bubbles to filter the gantt or hover to see details.  

     

    ExecutionGantt.PNG

     

     

    Message 40 of 59
    5,875 Views
    0
    Reply
    rshina
    rshina
    Regular Visitor
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎07-12-2018 09:51 AM

    This looks like a great way to monitor jobs, thanks for posting. I have downloaded the "SSISDB_Dashboard_v0_81_Full_Blank.pbix" version and can change the msdn connection from localhost to the sql instance that we are looking to monitor. However I cannot find a way to modify the SSISDB connection. The Edit Connection button greys out when I select it.

     

    Any assistance would be greatly appreciated.

     

    Thanks

    Message 37 of 59
    5,917 Views
    0
    Reply
    stretcharm
    stretcharm Memorable Member
    Memorable Member
    In response to rshina
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎07-12-2018 11:48 AM

    Change the ServerName Parameter.

     

    This is used for all connections.

     

    parameter.PNG

     

    Apply should then repoint everything to your server. You should not need to change the SSISdb unless is got a different db name.

     

    Alternativly get the template version from this path as they prompt you to enter the parameters when you open them.

     

    https://github.com/stretcharm/SSIS-DB-Dashboard

     

    If you get errors after changing the refresh each query manully in the query editor to ensure it's happy. Sometimes if needs help to get going. Also note that v81 doesn't like it if you have not executions so make sure you've got something in your SSISDB.

     

     

    Message 38 of 59
    5,913 Views
    0
    Reply
    jprince
    jprince
    New Member
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎07-09-2018 11:21 PM
    Hello,

    This is an amazing job you have done. We are in the process of selecting an ETL and I am afraid of the black box effect of SSIS. This is a way to mitigate. Do you think it could work at field level to do data lineage?

    The answer is probably no as it would require to parse each package code, but we never know 🙂

    Thanks
    Message 35 of 59
    5,939 Views
    0
    Reply
    stretcharm
    stretcharm Memorable Member
    Memorable Member
    In response to jprince
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎07-12-2018 02:15 AM

     

    Yes it can be tricky to get the full lineage of SSIS. The SSISDB Catalog doesn't hold this level of data, but it's there in the pacakge xml.

     

    Probably the ideal solution is to use metadata and build packages using BIML. This way your lineage design builds the package so you get documentation and generate the code. BIML is not going to work with complex SSIS requirements though.

     

    Doc Xpress does a decent job of extracting the SSIS guts for documentation. It has lineage functions, but this not as useful as it sounds.

    http://help.sentryone.com/docxpress/Index.html?SSISPackage.html

    https://www.sentryone.com/products/pragmatic-workbench/doc-xpress/sql-metadata-management

     

    You can also extract code from SSIS using powershell

    https://blogs.msdn.microsoft.com/arvindsh/2013/05/14/powershell-script-to-extract-t-sql-task-code-fr...

     

    We are moving to a metadata management of package and source dependancies. Eventually we may add column level lineage, but for now we are doing it on a table/data set level. This will allow us to see which target areas are impacted by any source system issues.

     

     

    Message 36 of 59
    5,930 Views
    0
    Reply
    stretcharm
    stretcharm Memorable Member
    Memorable Member
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎09-04-2017 08:22 AM

    Just noticed that changing servers can cause the Execution to Date Join to be dropped.

    Just add it back from ExecutionStartDate to Date

     

    MissingJoin.PNG

    Message 2 of 59
    31,922 Views
    1
    Reply
    stretcharm
    stretcharm Memorable Member
    Memorable Member
    In response to stretcharm
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎09-27-2017 01:41 PM

    Updated version 0.77 templates (blank docs as I cannot upload templates)

     

    Changed to use Ribbon charts
    Fixed Gantt Calculation
    Added Some Drillthroughs

    Fixed Date join issue
    Improved query performance on large SSIS DBs

     

    Small template doesn't include the rows or network diagrams that can be slow.

     

    I've also added a post in the Quick Measures for the Text Gantt Dax

    http://community.powerbi.com/t5/Quick-Measures-Gallery/Text-Gantt-Chart/m-p/253466

     

    SSISDB_Dashboard_v0_77_Blank.pbix
    SSISDB_Dashboard_small_v0_77_Blank.pbix
    Message 3 of 59
    31,662 Views
    2
    Reply
    stretcharm
    stretcharm Memorable Member
    Memorable Member
    In response to stretcharm
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎11-06-2017 10:27 AM

    Updated version 0.78 templates (blank docs as I cannot upload templates).

    Use the Server Name Parameter and Apply. Then do a refresh. If you want the Rows manually Refresh Execution Stats Rows as it's not included in the refresh.

     

    Changes.

    Added Percentage completion estimates to the Currently Running Tab
    Improved query performance on large SSIS DBs
    Execution Stats has commented out the time filter as its quicker on my server. If you have a large ssisdb you may want to uncomment.
    Improved query for Execution Hierarchy and it's now included in the Refereses
    Improved query for Execution Stats Rows. Still not not included in the refresh as it can be slow, but you can refresh manually.
    Add a Execution Comparison tab
    Add a Execution Over Time tab using scatter play axis

     

     

    Here are some new screen shots

     

    ExecutionOverTimeExecutionOverTimeExecutionComparisonExecutionComparisonExecutionGanttExecutionGanttExecutionExecutionStepsStepsPackagesPackagesMaster PackagesMaster PackagesExecutionListSummaryExecutionListSummarySummarySummaryExecutionPerformanceExecutionPerformance

    SSISDB_Dashboard_v0_78_Blank.pbix
    Message 4 of 59
    31,271 Views
    1
    Reply
    ADR
    ADR
    Regular Visitor
    In response to stretcharm
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎10-29-2019 12:52 AM

    Hi, 

    Awesome Report ! 

    How do I input todays date into the parameter so it is dynamic and always looks up to todays date ?

     

    Currently what i am seeing is I have to every morning update the parameter to todays date.  

     

    Please advise if I am doing something wrong. 

     

    What would be even better if there is any documentation on the solution ?

     

    Regards, 

    Andrew

    Message 33 of 59
    4,808 Views
    0
    Reply
    stretcharm
    stretcharm Memorable Member
    Memorable Member
    In response to ADR
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎10-29-2019 02:18 PM

    Thanks

     

    The report works on a number of days of history to load.

    Set the MaxDaysData and the report will always load the latest data.

     

    The example report for the community page works on a single dataset as it's a fixed dataset.

     

    The only documentation is on this thread on in the github page.

    https://github.com/stretcharm/SSIS-DB-Dashboard

     

    To use get the template and when it opens populate the parameters to point to your

    SSIS db server, Agent Job Server, SSIS db name and the MaxDaysData.

    As long as it's SSIS 2012 or later and you have permissions it should just start working.

    Start with a small number of days in case there is too much data or the SSIS queries are a bit slow.

     

    If you have more questions I check the forum every once in a while.

     

     

     

    Message 34 of 59
    4,790 Views
    0
    Reply
    hariannem93
    hariannem93
    New Member
    In response to stretcharm
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎06-11-2019 10:21 AM

    Hi 

    If Possible can please the SQL code for the total package steps and error codes and failed steps.Hariaanem.da2gmail.com is my email. Thank you


    @stretcharm wrote:

    Updated version 0.78 templates (blank docs as I cannot upload templates).

    Use the Server Name Parameter and Apply. Then do a refresh. If you want the Rows manually Refresh Execution Stats Rows as it's not included in the refresh.

     

    Changes.

    Added Percentage completion estimates to the Currently Running Tab
    Improved query performance on large SSIS DBs
    Execution Stats has commented out the time filter as its quicker on my server. If you have a large ssisdb you may want to uncomment.
    Improved query for Execution Hierarchy and it's now included in the Refereses
    Improved query for Execution Stats Rows. Still not not included in the refresh as it can be slow, but you can refresh manually.
    Add a Execution Comparison tab
    Add a Execution Over Time tab using scatter play axis

     

     

    Here are some new screen shots

     

    ExecutionOverTimeExecutionOverTimeExecutionComparisonExecutionComparisonExecutionGanttExecutionGanttExecutionExecutionStepsStepsPackagesPackagesMaster PackagesMaster PackagesExecutionListSummaryExecutionListSummarySummarySummaryExecutionPerformanceExecutionPerformance


     

    Message 31 of 59
    5,216 Views
    0
    Reply
    stretcharm
    stretcharm Memorable Member
    Memorable Member
    In response to hariannem93
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎06-13-2019 10:20 AM

     code is available in the pbix or template files. get them from

    https://github.com/stretcharm/SSIS-DB-Dashboard

     

    If you go into the query editor you can see the sql for each area.

     

     

    Message 32 of 59
    5,183 Views
    0
    Reply
    wcrockett
    wcrockett
    Regular Visitor
    In response to stretcharm
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎12-20-2017 09:57 AM

    This is amazing!

     

    We have an SSIS environment that runs all packages from file system and we do not have an SSISDB. Is this still able to work? I was unable to get it set up because of the missing SSISDB. Packages are all on file system.

     

    Thanks for contributing this!

     

    -Wes

    Message 5 of 59
    30,664 Views
    0
    Reply
    stretcharm
    stretcharm Memorable Member
    Memorable Member
    In response to wcrockett
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎12-20-2017 12:30 PM

    Thanks.

     

    I'm afraid no it only works with SSISDB,

     

    I recommend if your using SQL 2012 or above you try deploying to the catalog as you get all the SSISDB logging for free and it's very good.

     

    In theory you could use file based ssis and create similar logs your self, but it would be lots of work. If they logs are the same as the SSISDB tables you could adapt the powerbi to use files instead of a db.

    Is there a reason why your not using the SSIS Catalog?

     

    Phil

    Message 6 of 59
    30,660 Views
    1
    Reply
    wcrockett
    wcrockett
    Regular Visitor
    In response to stretcharm
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎12-20-2017 12:42 PM

    Thanks for the info. All of our packages are from a vendor solution so we don't have a whole lot of control over how they are deployed and updated.

    Message 7 of 59
    30,651 Views
    0
    Reply
    stretcharm
    stretcharm Memorable Member
    Memorable Member
    In response to wcrockett
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎12-20-2017 01:02 PM

    OK. You could suggest they get with the times. Smiley LOL

     

    If they give you any execution logs you could try building your own dashboard from them.

    PowerBI is also very good at loading data from files.

    Most of my dashboard is driven from the execution statistic data.

     

     

     

     

    Message 8 of 59
    30,645 Views
    1
    Reply
    wcrockett
    wcrockett
    Regular Visitor
    In response to stretcharm
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎12-20-2017 01:05 PM

    I sent the inquiry today as to whether this is something on their roadmap. I will have to look in to exection logs. The vendor does have their own dashboard for tracking, configuring, and managing the product from an ETL/DW perspective, but they don't have any analytics built in to show trend, day over day, etc. Theorhetically, I could learn their DB well enough to build off of.

    Message 9 of 59
    30,639 Views
    0
    Reply
    stretcharm
    stretcharm Memorable Member
    Memorable Member
    In response to wcrockett
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎12-20-2017 01:33 PM

    Sounds promising. I doubt they have done anything too radically different.

    However as long as you can get the package start and ends you've got the basics needed to do the trends.

    Message 10 of 59
    30,636 Views
    0
    Reply
    sjt003
    sjt003
    Frequent Visitor
    In response to stretcharm
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎02-12-2018 10:57 AM

    Hi,

     

    This looks awesome.  I wasn't able to run it though as we seem to have too much data (though we only keep 14 days in the catalog).  The notes mention a "small" version, but I couldn't figure out where the file for that is in in the download.  Is it in a different version?

     

    I'm also getting a duplicate ExecutionID key on the Execution query.  I checked the table though and it only exists once.  Maybe being duplicated by a join?

     

    Thanks,

    Scott

    Message 11 of 59
    5,262 Views
    0
    Reply
    stretcharm
    stretcharm Memorable Member
    Memorable Member
    In response to sjt003
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎02-12-2018 12:49 PM

    Thanks.

     

    It can sometimes take a bit of getting going on the initials loads. Try ensuring each of the queries work in the query editor.

    If you get any errors referring to Formula.Firewall: then try turning off privacy in the options. This can also help performance.

     

    How many projects, ssis executions do you have a day? I have about 180 executions with 8700 steps on a day and can easily load 30 days worth of history. However I tend to use 10 days.

     

    You may want to test the indiviual queries run ok on your environment in Mgmt Studio. Also running index maintainance on the SSIS Catalog db can help. I've tried to optimise based on my data.

     

    There is a small version in the post on the v77. I stopped creating it as I improved the query speed so it was not as bad and it was a pain to keep it up to date.

    However it's easy to may a small version, just disable the Load for Execution Path Map. Execution Hierarchy  and Execuction Statistics Rows. They are not essential and the queries are slow, especially the rows as it does string maniplation on the messages.. The Network, Sankey and Rows tabs will not be updated.

     

    The Execution Key should be unqiue however check what projects and folders you have. Maybe there is a combination that causes duplciates. If so let me know and I can update the joins.

     

    SELECT  ex.[execution_id] AS ExecutionID
    FROM    [catalog].[executions] ex
            JOIN [catalog].[packages] p ON p.name = ex.package_name
            JOIN catalog.projects pr ON p.project_id = pr.project_id
                                        AND ex.[project_name] = pr.name
            JOIN catalog.folders f ON pr.folder_id = f.folder_id    
    WHERE ex.[start_time] > DATEADD(DAY, -1* 3, CONVERT(DATE, GETDATE()));


    I've also been working on a very cut down version that is for currently running ssis and errors from today which add when I add then next update.

     

     

     

    Message 12 of 59
    5,251 Views
    0
    Reply
    sjt003
    sjt003
    Frequent Visitor
    In response to stretcharm
    • Mark as New
    • Bookmark
    • Subscribe
    • Mute
    • Subscribe to RSS Feed
    • Permalink
    • Print
    • Report Inappropriate Content

    ‎02-13-2018 01:41 PM

    Hi,

     

    We have about 600 executions a day in production, some packages may generate a lot of messages based on their steps, looping or if there were memory errors (not usual but has happened).  The event_messages view has about 20 million rows.

     

    I was able to get the queries to start refreshing in test, which has much less activity.  That's where I got the duplicate execution key error.  It looks like the problem is that I have some situations where packages with the same name exist in multiple places.  In one case, I have two folders with virtually the same projects and packages underneath because there were some variations in the packages requiring different code but otherwise the naming still made sense.  I think your join from catalog.executions to catalog.packages should be different.  It's on package name, which doesn't need to be unique.  Perhaps it could be on execution.object_type and execution.object_id.  My object_type is always = 20

     

    SELECT				ex.execution_id
    FROM				[catalog].[executions] ex 
    JOIN				[catalog].[packages] p 
    					ON p.package_id = ex.object_id 
    					AND ex.object_type = 30 -- Package 
    JOIN				catalog.projects pr ON p.project_id = pr.project_id AND ex.[project_name] = pr.name 
    JOIN				catalog.folders f ON pr.folder_id = f.folder_id 
    WHERE				ex.[start_time] > DATEADD(DAY, -1* 3, CONVERT(DATE, GETDATE()))
    
    UNION ALL
    
    SELECT				ex.execution_id
    FROM				[catalog].[executions] ex 
    JOIN				catalog.projects pr 
    					ON pr.project_id = ex.object_id
    					AND ex.object_type = 20 -- Project
    JOIN				catalog.folders f ON pr.folder_id = f.folder_id 
    WHERE				ex.[start_time] > DATEADD(DAY, -1* 3, CONVERT(DATE, GETDATE()))

    Thanks,

    Scott

    Message 13 of 59
    5,232 Views
    0
    Reply

    Power Platform

    • Overview
    • Power BI
    • Power Apps
    • Power Pages
    • Power Automate
    • Power Virtual Agents

    • Sign in
    • Sign up

    Browse

    • Solutions
    • Partners
    • Consulting Services

    Downloads

    • Power BI Desktop
    • Power BI Mobile
    • Power BI Report Server
    • See all downloads

    Learn

    • Guided learning
    • Documentation
    • Support
    • Community
    • Give feedback
    • Webinars
    • Developers
    • Blog
    • Newsletter

    © 2023 Microsoft

    Follow Power BI

    • Privacy & cookies
    • Manage cookies
    • Terms of use
    • Trademarks
    California Consumer Privacy Act (CCPA) Opt-Out Icon Your California Privacy Choices