feat: add logging for trace id (#1061)

relates to STACKITTPR-290
This commit is contained in:
Marcel Jacek 2025-11-27 11:06:18 +01:00 committed by GitHub
parent d1e12fcf64
commit 24b7387db9
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
140 changed files with 1597 additions and 7 deletions

View file

@ -23,6 +23,9 @@ func DatasourceRead(ctx context.Context, req datasource.ReadRequest, resp *datas
if resp.Diagnostics.HasError() {
return
}
ctx = core.InitProviderContext(ctx)
projectId := model.ProjectId.ValueString()
networkId := model.NetworkId.ValueString()
ctx = tflog.SetField(ctx, "project_id", projectId)
@ -44,6 +47,8 @@ func DatasourceRead(ctx context.Context, req datasource.ReadRequest, resp *datas
return
}
ctx = core.LogResponse(ctx)
err = mapDataSourceFields(ctx, networkResp, &model)
if err != nil {
core.LogAndAddError(ctx, &resp.Diagnostics, "Error reading network", fmt.Sprintf("Processing API payload: %v", err))

View file

@ -32,6 +32,9 @@ func Create(ctx context.Context, req resource.CreateRequest, resp *resource.Crea
}
projectId := model.ProjectId.ValueString()
ctx = core.InitProviderContext(ctx)
ctx = tflog.SetField(ctx, "project_id", projectId)
// Generate API request body from model
@ -49,6 +52,8 @@ func Create(ctx context.Context, req resource.CreateRequest, resp *resource.Crea
return
}
ctx = core.LogResponse(ctx)
networkId := *network.NetworkId
network, err = wait.CreateNetworkWaitHandler(ctx, client, projectId, networkId).WaitWithContext(ctx)
if err != nil {
@ -82,6 +87,9 @@ func Read(ctx context.Context, req resource.ReadRequest, resp *resource.ReadResp
}
projectId := model.ProjectId.ValueString()
networkId := model.NetworkId.ValueString()
ctx = core.InitProviderContext(ctx)
ctx = tflog.SetField(ctx, "project_id", projectId)
ctx = tflog.SetField(ctx, "network_id", networkId)
@ -96,6 +104,8 @@ func Read(ctx context.Context, req resource.ReadRequest, resp *resource.ReadResp
return
}
ctx = core.LogResponse(ctx)
// Map response body to schema
err = mapFields(ctx, networkResp, &model)
if err != nil {
@ -121,6 +131,9 @@ func Update(ctx context.Context, req resource.UpdateRequest, resp *resource.Upda
}
projectId := model.ProjectId.ValueString()
networkId := model.NetworkId.ValueString()
ctx = core.InitProviderContext(ctx)
ctx = tflog.SetField(ctx, "project_id", projectId)
ctx = tflog.SetField(ctx, "network_id", networkId)
@ -144,6 +157,9 @@ func Update(ctx context.Context, req resource.UpdateRequest, resp *resource.Upda
core.LogAndAddError(ctx, &resp.Diagnostics, "Error updating network", fmt.Sprintf("Calling API: %v", err))
return
}
ctx = core.LogResponse(ctx)
waitResp, err := wait.UpdateNetworkWaitHandler(ctx, client, projectId, networkId).WaitWithContext(ctx)
if err != nil {
core.LogAndAddError(ctx, &resp.Diagnostics, "Error updating network", fmt.Sprintf("Network update waiting: %v", err))
@ -174,6 +190,9 @@ func Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.Dele
projectId := model.ProjectId.ValueString()
networkId := model.NetworkId.ValueString()
ctx = core.InitProviderContext(ctx)
ctx = tflog.SetField(ctx, "project_id", projectId)
ctx = tflog.SetField(ctx, "network_id", networkId)
@ -183,6 +202,9 @@ func Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.Dele
core.LogAndAddError(ctx, &resp.Diagnostics, "Error deleting network", fmt.Sprintf("Calling API: %v", err))
return
}
ctx = core.LogResponse(ctx)
_, err = wait.DeleteNetworkWaitHandler(ctx, client, projectId, networkId).WaitWithContext(ctx)
if err != nil {
core.LogAndAddError(ctx, &resp.Diagnostics, "Error deleting network", fmt.Sprintf("Network deletion waiting: %v", err))

View file

@ -26,6 +26,9 @@ func DatasourceRead(ctx context.Context, req datasource.ReadRequest, resp *datas
projectId := model.ProjectId.ValueString()
networkId := model.NetworkId.ValueString()
region := providerData.GetRegionWithOverride(model.Region)
ctx = core.InitProviderContext(ctx)
ctx = tflog.SetField(ctx, "project_id", projectId)
ctx = tflog.SetField(ctx, "network_id", networkId)
@ -45,6 +48,8 @@ func DatasourceRead(ctx context.Context, req datasource.ReadRequest, resp *datas
return
}
ctx = core.LogResponse(ctx)
err = mapDataSourceFields(ctx, networkResp, &model, region)
if err != nil {
core.LogAndAddError(ctx, &resp.Diagnostics, "Error reading network", fmt.Sprintf("Processing API payload: %v", err))

View file

@ -33,6 +33,9 @@ func Create(ctx context.Context, req resource.CreateRequest, resp *resource.Crea
projectId := model.ProjectId.ValueString()
region := model.Region.ValueString()
ctx = core.InitProviderContext(ctx)
ctx = tflog.SetField(ctx, "project_id", projectId)
ctx = tflog.SetField(ctx, "region", region)
@ -51,6 +54,8 @@ func Create(ctx context.Context, req resource.CreateRequest, resp *resource.Crea
return
}
ctx = core.LogResponse(ctx)
networkId := *network.Id
network, err = wait.CreateNetworkWaitHandler(ctx, client, projectId, region, networkId).WaitWithContext(ctx)
if err != nil {
@ -85,6 +90,9 @@ func Read(ctx context.Context, req resource.ReadRequest, resp *resource.ReadResp
projectId := model.ProjectId.ValueString()
networkId := model.NetworkId.ValueString()
region := providerData.GetRegionWithOverride(model.Region)
ctx = core.InitProviderContext(ctx)
ctx = tflog.SetField(ctx, "project_id", projectId)
ctx = tflog.SetField(ctx, "network_id", networkId)
ctx = tflog.SetField(ctx, "region", region)
@ -100,6 +108,8 @@ func Read(ctx context.Context, req resource.ReadRequest, resp *resource.ReadResp
return
}
ctx = core.LogResponse(ctx)
// Map response body to schema
err = mapFields(ctx, networkResp, &model, region)
if err != nil {
@ -126,6 +136,9 @@ func Update(ctx context.Context, req resource.UpdateRequest, resp *resource.Upda
projectId := model.ProjectId.ValueString()
networkId := model.NetworkId.ValueString()
region := model.Region.ValueString()
ctx = core.InitProviderContext(ctx)
ctx = tflog.SetField(ctx, "project_id", projectId)
ctx = tflog.SetField(ctx, "network_id", networkId)
ctx = tflog.SetField(ctx, "region", region)
@ -150,6 +163,9 @@ func Update(ctx context.Context, req resource.UpdateRequest, resp *resource.Upda
core.LogAndAddError(ctx, &resp.Diagnostics, "Error updating network", fmt.Sprintf("Calling API: %v", err))
return
}
ctx = core.LogResponse(ctx)
waitResp, err := wait.UpdateNetworkWaitHandler(ctx, client, projectId, region, networkId).WaitWithContext(ctx)
if err != nil {
core.LogAndAddError(ctx, &resp.Diagnostics, "Error updating network", fmt.Sprintf("Network update waiting: %v", err))
@ -181,6 +197,9 @@ func Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.Dele
projectId := model.ProjectId.ValueString()
networkId := model.NetworkId.ValueString()
region := model.Region.ValueString()
ctx = core.InitProviderContext(ctx)
ctx = tflog.SetField(ctx, "project_id", projectId)
ctx = tflog.SetField(ctx, "network_id", networkId)
ctx = tflog.SetField(ctx, "region", region)
@ -191,6 +210,9 @@ func Delete(ctx context.Context, req resource.DeleteRequest, resp *resource.Dele
core.LogAndAddError(ctx, &resp.Diagnostics, "Error deleting network", fmt.Sprintf("Calling API: %v", err))
return
}
ctx = core.LogResponse(ctx)
_, err = wait.DeleteNetworkWaitHandler(ctx, client, projectId, region, networkId).WaitWithContext(ctx)
if err != nil {
core.LogAndAddError(ctx, &resp.Diagnostics, "Error deleting network", fmt.Sprintf("Network deletion waiting: %v", err))