I am getting this error
duration_ms:
0.4833
error:
true
error.type:
connection_error
http.request.method:
POST
library.name:
System.Net.Http
meta.signal_type:
trace
name:
POST
Sample Rate:
1
server.address:
localhost
server.port:
38271
service.instance.id:
cec7ebab-1095-402f-84ca-ef5bc1259bea
service.name:
Eduverse.HttpApi.Host
span.kind:
client
span.num_events:
0
span.num_links:
0
status_code:
2
telemetry.sdk.language:
dotnet
telemetry.sdk.name:
opentelemetry
telemetry.sdk.version:
1.12.0
trace.span_id:
c9e7c14c1dd5266a
trace.trace_id:
97df45e96bfa735f2306f52a02929f2a
type:
client
url.full:
http://localhost:38271/IStudioHub/Connect
As background, we commented out app.UseAbpStudioLink(); as it was causing issues with signalR
Is there a way to just remove the studio module in non-development envs? ABP Studio is not needed for our prod deployments, only for local dev work
4 Answer(s)
-
0
- Solution
ABP Studio’s HTTP client traces (like the
POST http://localhost:38271/IStudioHub/Connect) come from the ABP Studio client integration, not from your own SignalR hub. You don’t need to remove the module; you can simply disable the link in non‑development environments.Do this in your HttpApi.Host (or main web host) project.
A. Disable Studio link via configuration (recommended for prod)
In
appsettings.Production.json(or any non‑dev environment config for your host):{ "AbpStudioClient": { "IsLinkEnabled": false, "StudioUrl": "http://localhost:38271" } }Key behavior:
IsLinkEnabled = false→ the application does not attempt to connect toIStudioHub/Connect, so no more connection attempts / noise / conflicts in production.- You can keep
IsLinkEnabled = trueinappsettings.Development.jsonfor local development.
Example
appsettings.Development.json:{ "AbpStudioClient": { "IsLinkEnabled": true, "StudioUrl": "http://localhost:38271" } }ABP automatically binds this section to
AbpStudioClientOptions, so no extra code is required.
B. (Optional) Disable via code instead (per environment)
If you prefer code-based control, you can configure options in your HttpApi.Host module:
using Microsoft.Extensions.Hosting; using Volo.Abp.Modularity; using Volo.Abp.Studio.Client; using Volo.Abp; [DependsOn( // other modules... typeof(AbpStudioClientAspNetCoreModule) // if you are using the Studio client package )] public class EduverseHttpApiHostModule : AbpModule { public override void ConfigureServices(ServiceConfigurationContext context) { var env = context.Services.GetHostingEnvironment(); Configure<AbpStudioClientOptions>(options => { // Disable for non-development options.IsLinkEnabled = env.IsDevelopment(); // options.StudioUrl = "http://localhost:38271"; // optional }); } }This way:
- Local development (
ASPNETCORE_ENVIRONMENT=Development) → ABP Studio link enabled. - Any other env (
Staging,Production, etc.) → ABP Studio link disabled.
You can then safely restore
app.UseAbpStudioLink();without affecting production, because the middleware will seeIsLinkEnabled = falseand won’t attempt to connect.
- Sources
- ABP Studio telemetry / client configuration (
AbpStudioClientOptions,IsLinkEnabled,StudioUrl):
https://github.com/abpframework/abp/blob/HEAD/docs/en/studio/monitoring-applications.md - Environment-based configuration of
AbpStudioClient__IsLinkEnabledandAbpStudioClient__StudioUrlin microservice templates:
https://github.com/abpframework/abp/blob/HEAD/docs/en/solution-templates/microservice/adding-new-api-gateways.md
This response was generated by AI. If it didn’t solve your problem, feel free to post a new answer — our support team will jump in to help you soon.
-
0
hi
Can you share the full logs.txt?
liming.ma@volosoft.com
The AI's suggestion is correct.
Thanks.
-
0
Hi Maliming,
Strangely I don't see it in my error logs, only in the traces. Any idea why that is the case? perhaps due to logging level in our environment? Many thanks
I will attempt the config mentioned by the AI bot and see if that works
{ "AbpStudioClient": { "IsLinkEnabled": true } }Bryan
-
0
hi
These telemetry messages are generated by third-party libraries when exceptions occur. It is not necessarily a failure; sometimes it may be a retry.
You can ignore it. Disable
UseAbpStudioLinkin production mode.Thanks.