Set resource field on log entry
This commit is contained in:
parent
53387f5a0c
commit
8199e0d2d5
|
@ -7,6 +7,7 @@ package org.signal.event
|
||||||
|
|
||||||
import com.google.cloud.logging.LogEntry
|
import com.google.cloud.logging.LogEntry
|
||||||
import com.google.cloud.logging.Logging
|
import com.google.cloud.logging.Logging
|
||||||
|
import com.google.cloud.logging.MonitoredResourceUtil
|
||||||
import com.google.cloud.logging.Payload.JsonPayload
|
import com.google.cloud.logging.Payload.JsonPayload
|
||||||
import com.google.cloud.logging.Severity
|
import com.google.cloud.logging.Severity
|
||||||
import com.google.protobuf.Struct
|
import com.google.protobuf.Struct
|
||||||
|
@ -22,7 +23,7 @@ class NoOpAdminEventLogger : AdminEventLogger {
|
||||||
override fun logEvent(event: Event, labels: Map<String, String>?) {}
|
override fun logEvent(event: Event, labels: Map<String, String>?) {}
|
||||||
}
|
}
|
||||||
|
|
||||||
class GoogleCloudAdminEventLogger(private val logging: Logging, private val logName: String) : AdminEventLogger {
|
class GoogleCloudAdminEventLogger(private val logging: Logging, private val projectId: String, private val logName: String) : AdminEventLogger {
|
||||||
override fun logEvent(event: Event, labels: Map<String, String>?) {
|
override fun logEvent(event: Event, labels: Map<String, String>?) {
|
||||||
val structBuilder = Struct.newBuilder()
|
val structBuilder = Struct.newBuilder()
|
||||||
JsonFormat.parser().merge(jsonFormat.encodeToString(event), structBuilder)
|
JsonFormat.parser().merge(jsonFormat.encodeToString(event), structBuilder)
|
||||||
|
@ -30,7 +31,8 @@ class GoogleCloudAdminEventLogger(private val logging: Logging, private val logN
|
||||||
|
|
||||||
val logEntryBuilder = LogEntry.newBuilder(JsonPayload.of(struct))
|
val logEntryBuilder = LogEntry.newBuilder(JsonPayload.of(struct))
|
||||||
.setLogName(logName)
|
.setLogName(logName)
|
||||||
.setSeverity(Severity.NOTICE);
|
.setSeverity(Severity.NOTICE)
|
||||||
|
.setResource(MonitoredResourceUtil.getResource(projectId, "project"));
|
||||||
if (labels != null) {
|
if (labels != null) {
|
||||||
logEntryBuilder.setLabels(labels);
|
logEntryBuilder.setLabels(labels);
|
||||||
}
|
}
|
||||||
|
|
|
@ -193,6 +193,7 @@ import org.whispersystems.textsecuregcm.storage.NonNormalizedAccountCrawlerListe
|
||||||
import org.whispersystems.textsecuregcm.storage.PhoneNumberIdentifiers;
|
import org.whispersystems.textsecuregcm.storage.PhoneNumberIdentifiers;
|
||||||
import org.whispersystems.textsecuregcm.storage.Profiles;
|
import org.whispersystems.textsecuregcm.storage.Profiles;
|
||||||
import org.whispersystems.textsecuregcm.storage.ProfilesManager;
|
import org.whispersystems.textsecuregcm.storage.ProfilesManager;
|
||||||
|
import org.whispersystems.textsecuregcm.storage.ProhibitedUsernames;
|
||||||
import org.whispersystems.textsecuregcm.storage.PubSubManager;
|
import org.whispersystems.textsecuregcm.storage.PubSubManager;
|
||||||
import org.whispersystems.textsecuregcm.storage.PushChallengeDynamoDb;
|
import org.whispersystems.textsecuregcm.storage.PushChallengeDynamoDb;
|
||||||
import org.whispersystems.textsecuregcm.storage.PushFeedbackProcessor;
|
import org.whispersystems.textsecuregcm.storage.PushFeedbackProcessor;
|
||||||
|
@ -201,7 +202,6 @@ import org.whispersystems.textsecuregcm.storage.RemoteConfigs;
|
||||||
import org.whispersystems.textsecuregcm.storage.RemoteConfigsManager;
|
import org.whispersystems.textsecuregcm.storage.RemoteConfigsManager;
|
||||||
import org.whispersystems.textsecuregcm.storage.ReportMessageDynamoDb;
|
import org.whispersystems.textsecuregcm.storage.ReportMessageDynamoDb;
|
||||||
import org.whispersystems.textsecuregcm.storage.ReportMessageManager;
|
import org.whispersystems.textsecuregcm.storage.ReportMessageManager;
|
||||||
import org.whispersystems.textsecuregcm.storage.ProhibitedUsernames;
|
|
||||||
import org.whispersystems.textsecuregcm.storage.StoredVerificationCodeManager;
|
import org.whispersystems.textsecuregcm.storage.StoredVerificationCodeManager;
|
||||||
import org.whispersystems.textsecuregcm.storage.SubscriptionManager;
|
import org.whispersystems.textsecuregcm.storage.SubscriptionManager;
|
||||||
import org.whispersystems.textsecuregcm.storage.VerificationCodeStore;
|
import org.whispersystems.textsecuregcm.storage.VerificationCodeStore;
|
||||||
|
@ -417,6 +417,7 @@ public class WhisperServerService extends Application<WhisperServerConfiguration
|
||||||
.setCredentials(GoogleCredentials.fromStream(new ByteArrayInputStream(
|
.setCredentials(GoogleCredentials.fromStream(new ByteArrayInputStream(
|
||||||
config.getAdminEventLoggingConfiguration().credentials().getBytes(StandardCharsets.UTF_8))))
|
config.getAdminEventLoggingConfiguration().credentials().getBytes(StandardCharsets.UTF_8))))
|
||||||
.build().getService(),
|
.build().getService(),
|
||||||
|
config.getAdminEventLoggingConfiguration().projectId(),
|
||||||
config.getAdminEventLoggingConfiguration().logName());
|
config.getAdminEventLoggingConfiguration().logName());
|
||||||
|
|
||||||
StripeManager stripeManager = new StripeManager(config.getStripe().getApiKey(), stripeExecutor,
|
StripeManager stripeManager = new StripeManager(config.getStripe().getApiKey(), stripeExecutor,
|
||||||
|
|
Loading…
Reference in New Issue