- last updated 2 day(s) ago
- 3992 daily downloads
- 1640424 total downloads
- Latest version: 2.8.0
Phobos.TestKit 2.6.0
Framework used for testing applications that have been instrumented using Phobos. Makes it feasible to test using data collected from actor traces, monitoring, and so forth.
Install-Package Phobos.TestKit -Version 2.6.0
dotnet add package Phobos.TestKit --version 2.6.0
<PackageReference Include="Phobos.TestKit" Version="2.6.0"/>
paket add Phobos.TestKit --version 2.6.0
Release Notes
Phobos 2.x Feature Release** Phobos 2.6 includes several new features and improvements aimed at making Phobos data even more useful for Akka.NET developers. Customize Actor Type Names** One major issue we resolved is [Actor type information and F# API](https://github.com/petabridge/phobos-issues/issues/80), where [Akkling](https://github.com/Horusiath/Akkling) users noticed that all of their F# actors all had identical names in Phobos's metrics and traces due to the way the F# type system works differently from C#. In order to resolve this, we've added a new attribute to Phobos - the `PhobosActorName` attribute, which will allow you to tell Phobos to use a different name for this actor type OTHER than its given CLI type. ```csharp [PhobosActorName("Foo")] public class MyActor : UntypedActor { // Implementation here } ``` In [Phobos' automatically collected metrics](https://phobos.petabridge.com/articles/captured-data.html#metric-data), the `actortype` attribute will now use `Foo` instead of `Assembly.Namespace.MyActor`. In [Phobos's automatically collected traces](https://phobos.petabridge.com/articles/captured-data.html#trace-data), the `akka.actor.type` attribute will now use `Foo` instead of `Assembly.Namespace.MyActor`. `akka.actor.stop` trace event** If you have actor lifecycle tracing enabled (which it is, by default) you will now notice that Phobos automatically records `akka.actor.stop` events whenever an actor is terminated - whether that's done through `PoisonPill.Instance` or `Context.Stop` is irrelevant; Phobos will capture both. This is designed to make it easier to trace what causes actors to shut down, and this feature played a pivotal role in [Petabridge's investigation of a very tricky heisenbug in Akka.Cluster.Sharding](https://petabridge.com/blog/worst-dotnet-bug/) earlier this year. We've now made this available for all customers. Other Fixes and Improvements** `PhobosStash` has been made `public` on an experimental basis - you probably won't need it and we may remove access to it in the future if customers footgun themselves with it. But for the time being, it's no longer `internal` to the Phobos SDK. Akka.Persistence actors will no longer record traces unless the actors recovering / persisting initiate them first - this is an important noise control measure aimed at making sure that actors tagged with `INeverTrace` or `INeverInstrumented` don't create chatter during their interactions with Akka.Persistence. [Upgraded to Akka.NET v1.5.32](https://github.com/akkadotnet/akka.net/releases/tag/1.5.32) [Upgraded to Akka.Hosting v1.5.32](https://github.com/akkadotnet/Akka.Hosting/releases/tag/1.5.32)
Dependencies
.NETCoreApp
- Phobos.Actor (>=2.6.0)
- Akka.TestKit.Xunit2 (>=1.5.32)
- FluentAssertions (>=6.12.0)
- OpenTelemetry.Exporter.InMemory (>=1.6.0)
- xunit (>=2.8.1)
.NETStandard
- Phobos.Actor (>=2.6.0)
- Akka.TestKit.Xunit2 (>=1.5.32)
- FluentAssertions (>=6.12.0)
- OpenTelemetry.Exporter.InMemory (>=1.6.0)
- xunit (>=2.8.1)
Versions
Info
- last updated 43 day(s) ago
- Project Site
- License Info
Statistics
- 4915 total downloads
- 3 downloads of current version
Owners and Products
PetabridgeAuthors
Petabridge
Copyright
Copyright © 2017-2025 Petabridge
Petabridge