Double-check your setup against the installation guide. Make sure:
- The package installed correctly.
- The firewall is initialized early in your app (before routes or handlers).
- Your framework-specific integration (middleware, decorator, etc.) matches the example in the README.
- You’re running a supported runtime version for your language.
The firewall must be able to reach Aikido’s API endpoints.
Test from the same environment where your app runs and follow the instructions on this page: https://help.aikido.dev/zen-firewall/miscellaneous/outbound-network-connections-for-zen
ASP.NET Core (container or service):
- Docker:
docker logs <your-app-container> - systemd:
journalctl -u <your-app-service> --since "1 hour ago"
Increase verbosity to see Zen messages by setting the log level for the Aikido namespace:
appsettings.json
{
"Logging": {
"LogLevel": {
"Aikido.Zen": "Information",
"Aikido.Zen.Core": "Information"
}
}
}
Zen writes through Microsoft.Extensions.Logging; look for entries from Aikido.Zen and Aikido.Zen.Core.
dotnet list package | grep Aikido.Zen
Expected: Aikido.Zen.DotNetCore (for ASP.NET Core) or Aikido.Zen.DotNetFramework (for .NET Framework).
-
ASP.NET Core:
UseZenFirewall()is in the pipeline, ideally high enough to catch all requests. -
.NET Framework:
Zen.Start()is called (e.g., inGlobal.asax.csor OWINStartup.cs).
If you still can’t resolve the issue:
- Use the in-app chat to reach our support team directly.
- Or create an issue on GitHub with details about your setup, framework, and logs.
Include as much context as possible (framework, logs, and how Aikido was added) so we can help you quickly. Review our debugging guide for additional details.