Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
import lombok.SneakyThrows;
import lombok.extern.slf4j.Slf4j;
import org.reactivestreams.Publisher;
import no.ssb.dlp.pseudo.service.tracing.WithSpan;

import jakarta.inject.Inject;
import jakarta.inject.Singleton;
Expand Down Expand Up @@ -52,6 +53,7 @@ public AccessTokenFilter(@Nullable @Value("${gcp.http.client.filter.credentials-
}

@SneakyThrows
@WithSpan
public Publisher<? extends HttpResponse<?>> doFilter(MutableHttpRequest<?> request, ClientFilterChain chain) {
Optional<AccessTokenFilterConfig> config = getConfig(request);
if (config.isPresent()) {
Expand All @@ -72,7 +74,8 @@ private void setProjectIdHeader(MutableHttpRequest<?> request) {
}

@SneakyThrows
private String getAccessToken(String audience) {
@WithSpan
protected String getAccessToken(String audience) {
return credentials.createScoped(audience).refreshAccessToken().getTokenValue();
}

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -61,7 +61,7 @@ public class PseudoController {
* @return HTTP response containing a {@link HttpResponse<Flowable>} object.
*/

@WithSpan("pseudonyimze column")
@WithSpan("pseudonymize column")
@AddingSpanAttributes
@Operation(summary = "Pseudonymize field", description = "Pseudonymize a field.")
@Produces(MediaType.APPLICATION_JSON)
Expand Down Expand Up @@ -137,13 +137,21 @@ public HttpResponse<Flowable<byte[]>> depseudonymizeField(@SpanAttribute("depseu
* @param request JSON string representing a {@link RepseudoFieldRequest} object.
* @return HTTP response containing a {@link HttpResponse<Flowable>} object.
*/
@WithSpan("repseudonymize column")
@AddingSpanAttributes
@Operation(summary = "Repseudonymize field", description = "Repseudonymize a field.")
@Produces(MediaType.APPLICATION_JSON)
@Secured({PseudoServiceRole.ADMIN})
@Post(value = "/repseudonymize/field", consumes = MediaType.APPLICATION_JSON)
@ExecuteOn(TaskExecutors.BLOCKING)
public HttpResponse<Flowable<byte[]>> repseudonymizeField(@Schema(implementation = RepseudoFieldRequest.class) String request) {
public HttpResponse<Flowable<byte[]>> repseudonymizeField(@SpanAttribute("repseudonymize column request") @Schema(implementation = RepseudoFieldRequest.class) String request) {
RepseudoFieldRequest req = Json.toObject(RepseudoFieldRequest.class, request);
Span currentSpan = Span.current();
if (currentSpan.getSpanContext().isValid() && req != null) {
currentSpan.setAttribute("pseudo.field", req.getName());
currentSpan.setAttribute("pseudo.pattern", req.getPattern());
currentSpan.setAttribute("pseudo.values.count", req.getValues() == null ? 0 : req.getValues().size());
}
log.info(Strings.padEnd(String.format("*** Repseudonymize field: %s ", req.getName()), 80, '*'));
PseudoField sourcePseudoField = new PseudoField(req.getName(), req.getPattern(), req.getSourcePseudoFunc(), req.getSourceKeyset());
PseudoField targetPseudoField = new PseudoField(req.getName(), req.getPattern(), req.getTargetPseudoFunc(), req.getTargetKeyset());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -137,6 +137,7 @@ public Flowable<String> process(PseudoConfigSplitter pseudoConfigSplitter,
* @param values The values to be processed.
* @return A Flowable stream that processes the field values by applying the configured pseudo rules, and returns them as a lists of strings.
*/
@WithSpan
public Flowable<String> process(RecordMapProcessorFactory recordProcessorFactory,
List<String> values,
PseudoField targetPseudoField,
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,7 @@
import lombok.NonNull;
import lombok.RequiredArgsConstructor;
import reactor.core.publisher.Mono;
import no.ssb.dlp.pseudo.service.tracing.WithSpan;

import java.util.Optional;

Expand Down Expand Up @@ -46,6 +47,7 @@ public byte[] getSecret(String secretId, String version) {
return fetchSecret(secretId, version);
}

@WithSpan
byte[] fetchSecret(String secretId, String version) {
// Get key from overrides map if it is defined
if (config.getOverrides().containsKey(secretId)) {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@
import lombok.extern.slf4j.Slf4j;
import no.ssb.dlp.pseudo.service.accessgroups.CloudIdentityService;
import no.ssb.dlp.pseudo.service.accessgroups.Membership;
import no.ssb.dlp.pseudo.service.tracing.WithSpan;

import java.util.*;

Expand All @@ -25,6 +26,7 @@
@Requires(notEquals = "endpoints.cloud-run.enabled", value = "true")
})
@Slf4j
@WithSpan
public class CustomRolesFinder implements RolesFinder {

private final TokenConfiguration tokenConfiguration;
Expand Down
Loading