Skip to content
This repository has been archived by the owner on Mar 2, 2022. It is now read-only.

Releases: scale-tone/DurableFunctionsMonitor

DurableFunctionsMonitor 4.2

28 Feb 21:08
Compare
Choose a tag to compare
  • Orchestrations/Entities are now also visualized as a time histogram and as a Gantt chart. Time histogram is interactive, you can zoom it in/out with your mouse:

  • 'Send Signal' button for Durable Entities.
  • In addition to individual user names (DFM_ALLOWED_USER_NAMES setting) the backend now also supports validating AAD App Roles. Specify the list of allowed roles via DFM_ALLOWED_APP_ROLES setting - and only the users with one of those roles will be allowed to access your DFM endpoint. User's role should appear in the roles claim in their access token.
  • ReadOnly mode now supported. Set DFM_MODE config setting to ReadOnly - and all modification operations will be disabled (related methods will return 403).
  • Content-Security-Policy meta tag can now be customized. Create custom-meta-tag.htm blob in durable-functions-monitor container in your Storage account and put your version of that meta tag there (you can actually put any other arbitrary HTML tags as well). The contents of that blob will appear inside <HEADER> tag of returned index.html. Handy, if your custom tab templates use external fonts/images.
  • Minor bugfixes.

Deploy to Azure

durablefunctionsmonitor.dotnetbackend.4.2.0.nupkg
durablefunctionsmonitor-4.2.0.vsix

DurableFunctionsMonitor 4.1

07 Feb 18:42
Compare
Choose a tag to compare
  • Now you can install DFM as a NuGet package into your .Net Core Functions project:

    • dotnet add package DurableFunctionsMonitor.DotNetBackend
    • Make sure AzureWebJobsStorage config setting is set correctly - it should point to a Storage where your TaskHub(s) reside.
    • Invoke DfmEndpoint.Setup(); method at your Function's startup. E.g. like this:
     [assembly: WebJobsStartup(typeof(StartupNs.Startup))]
     namespace StartupNs 
     {
     	public class Startup : IWebJobsStartup
     	{
     		public void Configure(IWebJobsBuilder builder)
     		{
     			DfmEndpoint.Setup();
     		}
     	}
     }
    

    IMPORTANT1: that endpoint still does all the AuthN/AuthZ logic, in the same way as standalone DFM does. That means that EasyAuth needs to be configured appropriately for your Function instance, just like for a standalone DFM instance. If you do want to disable AuthN/AuthZ for that endpoint, either set DFM_NONCE config setting to i_sure_know_what_i_am_doing or call DfmEndpoint.Setup() method like this:

         DfmEndpoint.Setup(new DfmSettings{ DisableAuthentication = true });
    

    IMPORTANT2: a person who is able to access your DFM endpoint can potentially also access all HTTP-triggered endpoints in your project. Make sure you configure AuthN/AuthZ properly.

    IMPORTANT3: by default the endpoint exposes all Task Hubs in the underlying Storage account. Restrict the list of allowed Task Hubs either via DFM_HUB_NAME config setting (takes a comma-separated list) or via extensions.durableTask.hubName setting in your host.json.

  • Long-awaited dark color mode support.

  • Minor bugfixes.

Deploy to Azure

durablefunctionsmonitor.dotnetbackend.4.1.0.nupkg
durablefunctionsmonitor-4.1.0.vsix

DurableFunctionsMonitor 4.0

14 Jan 17:43
Compare
Choose a tag to compare
  • Single backend instance now allows to monitor all Task Hubs within given Storage Account (not just one, as before). Task Hub name comes from the first URL path segment, e.g. https://my-dfm-instance/DurableFunctionsHub. When navigating to the root URL, the list of available Task Hubs is shown, to choose from. Yet, DFM_HUB_NAME setting is still fully respected: when set, the backend instance is tied to that Task Hub only. Also it is now possible to put comma-separated list of allowed Task Hubs into there.
  • Minor bugfixes.

Deploy to Azure

durablefunctionsmonitor.dotnetbackend.4.0.0.nupkg
durablefunctionsmonitor-4.0.0.vsix

DurableFunctionsMonitor 3.9

18 Dec 22:54
Compare
Choose a tag to compare
  • Gantt Charts for orchestrations (in addition to Sequence Diagrams):

  • 'Go to instanceId...' feature to quickly navigate to an orchestration/entity instance by its id.
  • DotLiquid replaced with Fluid for rendering custom status tabs. Fluid looks much more alive and supports more Liquid features.
  • 'Save as .SVG' button for diagrams.
  • Status tabs now refresh themselves much smoother.
  • Minor bugfixes.

Deploy to Azure

durablefunctionsmonitor.dotnetbackend.3.9.0.nupkg
durablefunctionsmonitor-3.9.0.vsix

DurableFunctionsMonitor 3.8

04 Dec 22:15
Compare
Choose a tag to compare
  • BREAKING: The backend now enforces authentication by default. If you still want to turn it off (e.g. to run it locally on your devbox), set DFM_NONCE config setting to i_sure_know_what_i_am_doing.

  • Standalone service is now capable of validating AAD access tokens itself, without help from Easy Auth module. This allows hosting DFM instances outside Function Apps (e.g. in AKS, here is a deployment yaml for that). For that to work the following config settings need to be set (in addition to the normal AzureWebJobsStorage and DFM_HUB_NAME ones):

    • WEBSITE_AUTH_CLIENT_ID - clientId (aka applicationId) of your AAD application, that you have specifically created for protecting your DFM endpoints. See instructions on how to create an AAD app here.
    • WEBSITE_AUTH_OPENID_ISSUER - the Issuer claim (iss) in access tokens. Typically looks like https://login.microsoftonline.com/<your-aad-tenant-id>/v2.0.
    • (greatly recommended) DFM_ALLOWED_USER_NAMES - comma-separated list of user names (emails), that should be allowed to access. Matches the preferred_username claim in access tokens. WARNING: without this setting any user will be allowed to access your DFM endpoint.

    NOTE: only Azure AD Endpoint V2 is supported.

  • 'Restart' button for orchestrations (triggers the new .RestartAsync() method).

  • Sequence diagrams now show some timing (start times and durations)

  • VsCode extension: WebViews are now persistent (do not reload every time you switch between them) and even persist their state (filters, sorting etc.) across restarts.

  • VsCode extension: All logs (when enabled) now go to 'Durable Functions Monitor' output channel.

  • Minor bugfixes.

Deploy to Azure

durablefunctionsmonitor.dotnetbackend.3.8.0.nupkg
durablefunctionsmonitor-3.8.0.vsix

DurableFunctionsMonitor 3.7

18 Nov 18:24
Compare
Choose a tag to compare
  • Long-awaited 'Cancel' button on the Orchestrations page.
  • Now you can hide the columns you're not interested in:

  • VsCode extension: Local Storage Emulator, Azure Government and other exotic Storage Account types are now supported. If your Local Storage Emulator is running and there're some TaskHubs in it - they will appear automatically on your Azure Functions View Container (if not, try to modify the 'Storage Emulator Connection String' parameter on the Settings page).

  • VsCode extension: Now settings are stored in VsCode's settings.json. File->Preferences->Settings->Durable Functions Monitor:

durablefunctionsmonitor.dotnetbackend.3.7.0.nupkg
durablefunctionsmonitor-3.7.0.vsix

DurableFunctionsMonitor 3.6

03 Nov 00:50
Compare
Choose a tag to compare

DurableFunctionsMonitor 3.5

29 Oct 22:13
Compare
Choose a tag to compare
  • Now the Orchestration Details page features a nice mermaid-based sequence diagram:
    The diagram shows the entire hierarchy of suborchestrations, activity method invocations (they're shown as calls to itself), events and timers.

  • Also it's now possible to navigate to suborchestrations from the history list on the Orchestration Details page.

DurableFunctionsMonitor 3.4

24 Oct 17:04
Compare
Choose a tag to compare
  • VsCode extension is now integrated with Azure Account, so once logged in to Azure, you can now see and connect to all your TaskHubs. It is also still possible to connect with connection strings, as before.
  • Minor bugfixes related to AAD auth and MSAL library.

DurableFunctionsMonitor 3.3

05 Aug 13:04
Compare
Choose a tag to compare
  • customStatus value of your orchestration instances can now be changed with 'Set Custom Status' button.
  • Minor bugfixes.