Add a counter to estimate announcement group adoption
This commit is contained in:
parent
7cdadeb791
commit
739c5bf22c
|
@ -7,18 +7,32 @@ package org.whispersystems.textsecuregcm.auth;
|
||||||
import io.dropwizard.auth.Authenticator;
|
import io.dropwizard.auth.Authenticator;
|
||||||
import io.dropwizard.auth.basic.BasicCredentials;
|
import io.dropwizard.auth.basic.BasicCredentials;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
import io.micrometer.core.instrument.Metrics;
|
||||||
import org.whispersystems.textsecuregcm.storage.AccountsManager;
|
import org.whispersystems.textsecuregcm.storage.AccountsManager;
|
||||||
|
|
||||||
|
import static com.codahale.metrics.MetricRegistry.name;
|
||||||
|
|
||||||
public class AccountAuthenticator extends BaseAccountAuthenticator implements
|
public class AccountAuthenticator extends BaseAccountAuthenticator implements
|
||||||
Authenticator<BasicCredentials, AuthenticatedAccount> {
|
Authenticator<BasicCredentials, AuthenticatedAccount> {
|
||||||
|
|
||||||
|
private static final String AUTHENTICATION_COUNTER_NAME = name(AccountAuthenticator.class, "authenticate");
|
||||||
|
|
||||||
public AccountAuthenticator(AccountsManager accountsManager) {
|
public AccountAuthenticator(AccountsManager accountsManager) {
|
||||||
super(accountsManager);
|
super(accountsManager);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Optional<AuthenticatedAccount> authenticate(BasicCredentials basicCredentials) {
|
public Optional<AuthenticatedAccount> authenticate(BasicCredentials basicCredentials) {
|
||||||
return super.authenticate(basicCredentials, true);
|
final Optional<AuthenticatedAccount> maybeAuthenticatedAccount = super.authenticate(basicCredentials, true);
|
||||||
|
|
||||||
|
// TODO Remove after announcement groups have launched
|
||||||
|
maybeAuthenticatedAccount.ifPresent(authenticatedAccount ->
|
||||||
|
Metrics.counter(AUTHENTICATION_COUNTER_NAME,
|
||||||
|
"supportsAnnouncementGroups",
|
||||||
|
String.valueOf(authenticatedAccount.getAccount().isAnnouncementGroupSupported()))
|
||||||
|
.increment());
|
||||||
|
|
||||||
|
return maybeAuthenticatedAccount;
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue