Skip to content

Releases: dotnet/dotnet-monitor

Dotnet-Monitor Release - v6.0.2

08 Feb 18:08
9774a8c
Compare
Choose a tag to compare

Today we are releasing the 6.0.2 build of the dotnet-monitor tool. This release includes:

  • Ensure dump folder exists before capturing dump (#1216)
  • Ensure config show command completely writes end of configuration (#1112)
  • Allow command line parameters to be overriden by file-based configuration (#1102)
  • Allow command line parameters to be overriden by environment variables (#1398)
  • Fix generatekey command output parameter description (#1119)
Packages released to NuGet
  • dotnet-monitor.6.0.2.nupkg

Dotnet-Monitor Release - v6.0.1

08 Dec 16:50
f1aab08
Compare
Choose a tag to compare

Today we are releasing the 6.0.1 build of the dotnet-monitor tool. This release includes:

  • Prevent process enumeration from pruning processes that are capturing traces (#1103)
  • Avoid artifact filename collisions by adding millisecond disambiguation (#1180)
Packages released to NuGet
  • dotnet-monitor.6.0.1.nupkg

Dotnet-Monitor Release - v6.0.0

04 Nov 19:14
9b21f76
Compare
Choose a tag to compare

Today we are releasing the official 6.0.0 GA build of the dotnet monitor tool. This release includes:

  • Add netcoreapp3.1 target framework to allow tool to run on .NET Core 3.1 and .NET 5 (#1080).
  • Prevent process enumeration from pruning processes that are capturing dumps (#1059)
  • Fix metrics URL to respect values from configuration (#1070)
  • Validate egress provider before starting egress operation (#1071)
  • Fix root route to respond with HTTP 404 instead of HTTP 500 (#1072)
Packages released to NuGet
  • dotnet-monitor.6.0.0.nupkg

Dotnet-Monitor Release - v6.0.0-rc.1.21518.6

21 Oct 15:50
0d683e4
Compare
Choose a tag to compare

Today we are releasing the official release candidate build of the dotnet monitor tool. This release includes:

  • ⚠️ Replaced text/event-stream with text/plain for /logs routes. (#71)
  • ⚠️ Do not write byte order mark (BOM) in logs artifacts. (#1006)
  • Add CollectLogs collection rule action. (#660)
  • Stop collection rules on process when process is no longer detected. (#962)
  • Add token-based parameterization to Arguments property of Execute collection rule action. (#893)
  • Set metricUrls command line parameter to always use localhost by default. (#990)
  • Fix AspNetRequestDuration collection rule trigger polling interval to use global counter interval. (#967)
  • Handle all exceptions when enumerating processes. (#977)

*⚠️ indicates a breaking change

Packages released to NuGet
  • dotnet-monitor.6.0.0-rc.1.21518.6.nupkg

Dotnet-Monitor Release - v6.0.0-preview.8.21503.3

05 Oct 16:07
90753a0
Compare
Choose a tag to compare

Today we are releasing the next official preview of the dotnet-monitor tool. This release includes:

  • Added a new HTTP route (/livemetrics) to collect metrics on demand. (#68)
  • Added collection rules for automated collection of diagnostic artifacts based on trigger conditions in target applications. See Collection Rules for more details.
  • Updated process detection to cancel waiting on unresponsive processes.
  • Documented recommended container limits. See Running in Kubernetes for more details.
  • ⚠️ Upgraded runtime framework dependency from .NET Core 3.1 to .NET 6
  • ⚠️ Reversioned from 5.0.0 to 6.0.0
  • ⚠️ Fix all counter intervals to single global option (#923)

*⚠️ indicates a breaking change

Packages released to NuGet
  • dotnet-monitor.6.0.0-preview.8.21503.3.nupkg

Dotnet-Monitor Release - v5.0.0-preview.7.21425.3

26 Aug 15:46
e3bc251
Compare
Choose a tag to compare

Today we are releasing the next official preview of the dotnet-monitor tool. This release includes:

  • ⚠️ A breaking change to ApiKey authentication. The ApiAuthentication configuration settings used in preview 6 and below will not work with preview 7 and later. We have dropped the custom authentication scheme MonitorApiKey and the corresponding payload format. The new ApiKey format uses the standard Bearer authentication scheme with a JSON Web Token payload. Use the command dotnet monitor generatekey to make new ApiKey credentials and the corresponding configuration. See API Key Authentication for full details. (#247)
  • Improved detail provided in schema.json to more readily document configuration options. (#704)
  • Add command line option to collect, --no-http-egress, to disable HTTP egress, allowing administrator control on how data may be egressed from dotnet monitor. See Disabling HTTP Egress for details. (#202)
  • The generatekey command has one new command line parameter, --output. With this parameter, the output format of the Authentication configuration may be specified to be one of: Json, Text, Cmd, PowerShell or Shell. See Generating an API Key for details. (#589)
  • ⚠️ The generatekey command line parameters --hash-algorithm and --key-length have been removed. (#247)

*⚠️ indicates a breaking change

Packages released to NuGet

Dotnet-Monitor Release - v5.0.0-preview.6.21370.3

22 Jul 14:28
9c17149
Compare
Choose a tag to compare

Today we are releasing the next official preview of the dotnet-monitor tool. This release includes:

  • MonitorApiKey now supports a configurable key length and hash algorithm. Both the key length (--key-length) and hash algorithm (--hash-algorithm) can also be supplied to the generatekey command via command line parameters. (#361)
  • The /logs endpoint now supports egressing logs with the application/json-seq Content-Type. (#468)
  • ⚠️ Process selection uses query string instead of path segments. For example, a call to collect a gcdump of process id 21632 would now look like GET /gcdump?pid=21632. In addition topid all other process selectors (uid and name) can also be specified via query string. This change impacts the /process, /dump, /gcdump, /trace, and /logs endpoint. (#496)
  • ⚠️ Change in configuration for egress providers to allow for easier discoverability and greater extensibility. Each provider has a top-level configuration node under the Egress section. (#515)
  • New /info API endpoint for diagnostics that provides the dotnet monitor version number, the runtime version, and the diagnostic port settings used to connect to a target process. (#540)
  • ⚠️ New operational-style API by endpoints that produce a diagnostic artifact when egressed (/dump, /gcdump, /trace, and /logs). Prior to this change, long-running operations synchronously waited until the diagnostic artifact had been handled by an egress provider (e.g., a call to /dump would not return a HTTP response until the dump was written to Azure blob storage). The new API, will immediately return a 202 response with an operation id. Clients can then use this operation id to query the newly introduced /operations API to query dotnet monitor about the status of the operation. (#425)

*⚠️ indicates a breaking change

Packages released to NuGet

Dotnet-Monitor Release - v5.0.0-preview.5.21302.5

10 Jun 16:01
a99ec90
Compare
Choose a tag to compare

Today we are releasing the next official preview of the dotnet monitor tool. This release includes:

  • Require Configuration to Enable Default Process: Allow configuration of the default process for metrics and for routes where the target process is not specified; if not configured, routes that rely on a default process with return a HTTP 400 status. This is a breaking change from prior releases. In prior releases, the default process would resolve only if there was a single observerable process. See the configuration documentation for more details.
  • Default Process in Docker Image: The Docker image mcr.microsoft.com/dotnet/monitor (and nightly image mcr.microsoft.com/dotnet/nightly/monitor) have been updated to select the process with ID 1 as the default process; this can potentially break the default process behavior and routes that rely on the default process when running in a multi-container scenario.
  • Select Process By Name: Allow process selection to consider process names in addition to process IDs and runtime instanc cookies. See the /dump route documentation for an example.
  • Ephemeral API Keys: Enable generation of temporary API key by passing the --temp-apikey switch to the collect command when starting the dotnet monitor tool. This will generate an API key that is valid for the lifetime of the dotnet monitor process and write it out to the console. This mode is meant for inner loop development scenarios and is strongly discouraged for use in production scenarios.
  • Timestamps In Logs: Propagating original event timestamps in the output for the /logs routes.
  • Use Application Filters In Logs: Use the UseAppFilters sentinel for the /logs routes and /trace routes when the logs profile is included when targeting .NET Core 3.1 applications.
  • Custom Logs Collection: Add POST verb to /logs route that enables collection of logs from a custom set of log categories and log levels. See the POST /logs route documentation for more details.
  • Metrics URL Scheme Not Upgraded: Remove automatic upgrade of metrics URLs to HTTPS when custom metrics are configured. If HTTPS is desired, pass the --metircUrls argument with the URLs that require the HTTPS scheme or configure the metrics URLs in configuration.
Packages released to NuGet
  • dotnet-monitor.5.0.0-preview.5.21302.5.nupkg

Dotnet-Monitor Release - v5.0.0-preview.4.21219.3

21 Apr 15:49
69a9eab
Compare
Choose a tag to compare

Last year we announced dotnet-monitor, a tool that simplifies accessing diagnostic information from a .NET process. Today we are releasing it in an official preview capacity. You can read more about the release, new features, and changes to the original experience in "What's new in dotnet-monitor".

You can also check out our documentation to learn more about the different authentication mechanisms, configurability, API's, and capabilities.

Packages released to NuGet
  • dotnet-monitor.5.0.0-preview.4.21219.3.nupkg