#include "components/shared_highlighting/core/common/shared_highlighting_metrics.h"
#include "base/metrics/histogram_functions.h"
#include "base/notreached.h"
#include "base/strings/strcat.h"
#include "components/search_engines/search_engine_utils.h"
#include "services/metrics/public/cpp/ukm_builders.h"
namespace shared_highlighting {
namespace {
constexpr char kUmaPrefix[] = …;
TextFragmentLinkOpenSource GetLinkSource(const GURL& referrer) { … }
}
void LogDesktopLinkGenerationCopiedLinkType(LinkGenerationCopiedLinkType type) { … }
void LogLinkGenerationErrorReason(LinkGenerationError reason) { … }
void LogLinkRequestedErrorReason(LinkGenerationError reason) { … }
void LogLinkGenerationStatus(LinkGenerationStatus status) { … }
void LogLinkRequestedStatus(LinkGenerationStatus status) { … }
void LogRequestedSuccessMetrics(ukm::SourceId source_id) { … }
void LogRequestedFailureMetrics(ukm::SourceId source_id,
LinkGenerationError error) { … }
void LogTextFragmentAmbiguousMatch(bool ambiguous_match) { … }
void LogTextFragmentLinkOpenSource(const GURL& referrer) { … }
void LogTextFragmentMatchRate(int matches, int text_fragments) { … }
void LogTextFragmentSelectorCount(int count) { … }
void LogGenerateSuccessLatency(base::TimeDelta latency) { … }
void LogGenerateErrorLatency(base::TimeDelta latency) { … }
void LogLinkToTextReshareStatus(LinkToTextReshareStatus status) { … }
void LogLinkOpenedUkmEvent(ukm::SourceId source_id,
const GURL& referrer,
bool success) { … }
void LogLinkOpenedUkmEvent(ukm::UkmRecorder* recorder,
ukm::SourceId source_id,
const GURL& referrer,
bool success) { … }
void LogLinkGeneratedSuccessUkmEvent(ukm::SourceId source_id) { … }
void LogLinkGeneratedSuccessUkmEvent(ukm::UkmRecorder* recorder,
ukm::SourceId source_id) { … }
void LogLinkGeneratedErrorUkmEvent(ukm::SourceId source_id,
LinkGenerationError reason) { … }
void LogLinkGeneratedErrorUkmEvent(ukm::UkmRecorder* recorder,
ukm::SourceId source_id,
LinkGenerationError reason) { … }
void LogLinkGeneratedRequestedSuccessUkmEvent(ukm::SourceId source_id) { … }
void LogLinkGeneratedRequestedErrorUkmEvent(ukm::SourceId source_id,
LinkGenerationError reason) { … }
void LogLinkRequestedBeforeStatus(LinkGenerationStatus status,
LinkGenerationReadyStatus ready_status) { … }
}