mirror of
https://github.com/microsoft/PowerToys.git
synced 2026-04-05 02:36:19 +02:00
## Summary of the Pull Request
Added two events that Niels asked for:
- `CmdPal_ExtensionInvoked`
- Track which extensions are being used (e.g., file search, app
launching, calculator, etc.).
- Properties logged
- ExtensionId - Unique identifier of the extension provider
- CommandType - Display name of the command being invoked
- Success - Whether the command executed successfully
- ExecutionTimeMs - Execution time in milliseconds
- `CmdPal_SessionDuration`
- Tracks how long Command Palette stays open (launch → close).
- Properties logged
- DurationMs - Session duration in milliseconds
- CommandsExecuted - Number of commands executed
- PagesVisited - Number of pages visited
- DismissalReason - Why the session ended (Escape, LostFocus, Command,
etc.)
- SearchQueriesCount - Number of search queries executed
- MaxNavigationDepth - Maximum navigation depth reached
- ErrorCount - Number of errors encountered
<!-- Please review the items on the PR checklist before submitting-->
## PR Checklist
- [ ] Closes: #xxx
<!-- - [ ] Closes: #yyy (add separate lines for additional resolved
issues) -->
- [x] **Communication:** I've discussed this with core contributors
already. If the work hasn't been agreed, this work might be rejected
- [ ] **Tests:** Added/updated and all pass
- [ ] **Localization:** All end-user-facing strings can be localized
- [ ] **Dev docs:** Added/updated
- [ ] **New binaries:** Added on the required places
- [ ] [JSON for
signing](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ESRPSigning_core.json)
for new binaries
- [ ] [WXS for
installer](https://github.com/microsoft/PowerToys/blob/main/installer/PowerToysSetup/Product.wxs)
for new binaries and localization folder
- [ ] [YML for CI
pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/ci/templates/build-powertoys-steps.yml)
for new test projects
- [ ] [YML for signed
pipeline](https://github.com/microsoft/PowerToys/blob/main/.pipelines/release.yml)
- [ ] **Documentation updated:** If checked, please file a pull request
on [our docs
repo](https://github.com/MicrosoftDocs/windows-uwp/tree/docs/hub/powertoys)
and link it here: #xxx
27 lines
857 B
C#
27 lines
857 B
C#
// Copyright (c) Microsoft Corporation
|
|
// The Microsoft Corporation licenses this file to you under the MIT license.
|
|
// See the LICENSE file in the project root for more information.
|
|
|
|
using System.Diagnostics.CodeAnalysis;
|
|
using System.Diagnostics.Tracing;
|
|
using Microsoft.CommandPalette.Extensions;
|
|
using Microsoft.PowerToys.Telemetry;
|
|
using Microsoft.PowerToys.Telemetry.Events;
|
|
|
|
namespace Microsoft.CmdPal.UI.Events;
|
|
|
|
[EventData]
|
|
[DynamicallyAccessedMembers(DynamicallyAccessedMemberTypes.PublicProperties)]
|
|
public class CmdPalInvokeResult : EventBase, IEvent
|
|
{
|
|
public string ResultKind { get; set; }
|
|
|
|
public CmdPalInvokeResult(CommandResultKind resultKind)
|
|
{
|
|
EventName = "CmdPal_InvokeResult";
|
|
ResultKind = resultKind.ToString();
|
|
}
|
|
|
|
public PartA_PrivTags PartA_PrivTags => PartA_PrivTags.ProductAndServiceUsage;
|
|
}
|