Gremlin.FailureFlags
1.0.0
dotnet add package Gremlin.FailureFlags --version 1.0.0
NuGet\Install-Package Gremlin.FailureFlags -Version 1.0.0
<PackageReference Include="Gremlin.FailureFlags" Version="1.0.0" />
<PackageVersion Include="Gremlin.FailureFlags" Version="1.0.0" />
<PackageReference Include="Gremlin.FailureFlags" />
paket add Gremlin.FailureFlags --version 1.0.0
#r "nuget: Gremlin.FailureFlags, 1.0.0"
#:package Gremlin.FailureFlags@1.0.0
#addin nuget:?package=Gremlin.FailureFlags&version=1.0.0
#tool nuget:?package=Gremlin.FailureFlags&version=1.0.0
About
Gremlin Failure Flags is a .NET SDK for building application-level chaos experiments and reliability tests using the Gremlin Fault Injection platform. This library works in concert with Gremlin-Lambda, a Lambda Extension; or Gremlin-Sidecar, a container sidecar agent. This architecture minimizes the impact to your application code, simplifies configuration, and makes adoption painless.
Just like feature flags, Failure Flags are safe to add to and leave in your application. Failure Flags will always fail safe if it cannot communicate with its sidecar or its sidecar is misconfigured.
Take three steps to run an application-level experiment with Failure Flags:
- Instrument your code with this SDK
- Configure and deploy your code alongside one of the Failure Flag sidecars
- Run an Experiment with the console, API, or command line
The SDK is available on nuget.org as Gremlin.FailureFlags.
How to Use
You'll need to enable the SDK by setting the FAILURE_FLAGS_ENABLED
environent variable when you run the application where you add the SDK.
You can get started by adding the Gremlin.FailureFlags package to your project dependencies. Run the following command in your project directory:
dotnet add package Gremlin.FailureFlags
Then bring in the library and instrument the part of your application where you want to inject faults.
using System.Collections.Generic;
using FailureFlags;
...
var gremlin = new GremlinFailureFlags();
gremlin.Invoke(new FailureFlag()
{
Name = "http-ingress",
Labels = new Dictionary<string, string>()
{
{ "method", "GET" },
{ "path", "/api/v1/health" }
}
});
...
Links
Product | Versions Compatible and additional computed target framework versions. |
---|---|
.NET | net5.0 is compatible. net5.0-windows was computed. net6.0 was computed. net6.0-android was computed. net6.0-ios was computed. net6.0-maccatalyst was computed. net6.0-macos was computed. net6.0-tvos was computed. net6.0-windows was computed. net7.0 was computed. net7.0-android was computed. net7.0-ios was computed. net7.0-maccatalyst was computed. net7.0-macos was computed. net7.0-tvos was computed. net7.0-windows was computed. net8.0 was computed. net8.0-android was computed. net8.0-browser was computed. net8.0-ios was computed. net8.0-maccatalyst was computed. net8.0-macos was computed. net8.0-tvos was computed. net8.0-windows was computed. net9.0 was computed. net9.0-android was computed. net9.0-browser was computed. net9.0-ios was computed. net9.0-maccatalyst was computed. net9.0-macos was computed. net9.0-tvos was computed. net9.0-windows was computed. net10.0 was computed. net10.0-android was computed. net10.0-browser was computed. net10.0-ios was computed. net10.0-maccatalyst was computed. net10.0-macos was computed. net10.0-tvos was computed. net10.0-windows was computed. |
-
net5.0
- Microsoft.Extensions.Logging (>= 5.0.0)
- Microsoft.Extensions.Logging.Console (>= 5.0.0)
NuGet packages
This package is not used by any NuGet packages.
GitHub repositories
This package is not used by any popular GitHub repositories.
Version | Downloads | Last Updated |
---|---|---|
1.0.0 | 295 | 3/5/2025 |