From 017dc6184bfe545be4a6b968242bc1d85a85f00e Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Wed, 6 Dec 2023 12:00:01 +0100 Subject: [PATCH 1/6] Fix overflow issue and add account metric --- .../GraphQL/Transactions/TransactionTypeUnion.cs | 4 +++- .../Observability/ApplicationMetrics.cs | 16 ++++++++++++++++ frontend/src/components/atoms/Tooltip.vue | 7 +++++-- 3 files changed, 24 insertions(+), 3 deletions(-) diff --git a/backend/Application/Api/GraphQL/Transactions/TransactionTypeUnion.cs b/backend/Application/Api/GraphQL/Transactions/TransactionTypeUnion.cs index 94e6a3a22..f9ed36f91 100644 --- a/backend/Application/Api/GraphQL/Transactions/TransactionTypeUnion.cs +++ b/backend/Application/Api/GraphQL/Transactions/TransactionTypeUnion.cs @@ -1,4 +1,5 @@ -using Concordium.Sdk.Types; +using Application.Observability; +using Concordium.Sdk.Types; using HotChocolate; using HotChocolate.Types; @@ -15,6 +16,7 @@ public static TransactionTypeUnion CreateFrom(IBlockItemSummaryDetails value) var _ = TransactionTypeFactory.TryFrom(x.Effects, out var transactionType); return new AccountTransaction { AccountTransactionType = transactionType }; case AccountCreationDetails x: + ApplicationMetrics.IncAccountCreated(x.CredentialType); return new CredentialDeploymentTransaction { CredentialDeploymentTransactionType = x.CredentialType }; case UpdateDetails x: return new UpdateTransaction { UpdateTransactionType = UpdatePayloadFactory.From(x.Payload) }; diff --git a/backend/Application/Observability/ApplicationMetrics.cs b/backend/Application/Observability/ApplicationMetrics.cs index 6d959cf63..5bc2a5ef6 100644 --- a/backend/Application/Observability/ApplicationMetrics.cs +++ b/backend/Application/Observability/ApplicationMetrics.cs @@ -2,6 +2,7 @@ using System.Text; using Application.Aggregates.Contract.Types; using Application.Exceptions; +using Concordium.Sdk.Types; using HotChocolate.Execution; using Microsoft.Extensions.ObjectPool; using Prometheus; @@ -53,6 +54,14 @@ internal static class ApplicationMetrics } ); + private static readonly Counter TotalAccountCreated = Metrics.CreateCounter( + "accounts_created_total", + "Total number of accounts created", + new CounterConfiguration + { + LabelNames = new[] { "credential_type" } + }); + private static void AddProcessDuration(TimeSpan elapsed, string process, ImportSource source, Exception? exception) { var exceptionName = exception != null ? PrettyPrintException(exception) : ""; @@ -61,6 +70,13 @@ private static void AddProcessDuration(TimeSpan elapsed, string process, ImportS .WithLabels(process, source.ToStringCached(), exceptionName) .Observe(elapsedSeconds); } + + internal static void IncAccountCreated(CredentialType credentialType) + { + TotalAccountCreated + .WithLabels(credentialType.ToString()) + .Inc(); + } internal static void SetReadHeight(double value, string processIdentifier, ImportSource source) { diff --git a/frontend/src/components/atoms/Tooltip.vue b/frontend/src/components/atoms/Tooltip.vue index da67863e3..232635a46 100644 --- a/frontend/src/components/atoms/Tooltip.vue +++ b/frontend/src/components/atoms/Tooltip.vue @@ -71,9 +71,12 @@ const handleOnMouseLeave = () => { pointer-events: auto; white-space: normal; text-align: center; - width: 200px; + overflow-wrap: break-word; + line-height: 1em; + max-height: 100px; + max-inline-size: 200px; @media screen and (max-width: 640px) { - width: 150px; + max-inline-size: 150px; } } From 425716f546d30e39faa0d60b5b0b466adcb3f376 Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Wed, 6 Dec 2023 12:56:39 +0100 Subject: [PATCH 2/6] add transaction the correct place --- .../Api/GraphQL/Import/AccountImportHandler.cs | 4 +++- .../Api/GraphQL/Transactions/TransactionTypeUnion.cs | 4 +--- .../Application/Observability/ApplicationMetrics.cs | 11 +++-------- 3 files changed, 7 insertions(+), 12 deletions(-) diff --git a/backend/Application/Api/GraphQL/Import/AccountImportHandler.cs b/backend/Application/Api/GraphQL/Import/AccountImportHandler.cs index 0985c7fcf..ddd147f52 100644 --- a/backend/Application/Api/GraphQL/Import/AccountImportHandler.cs +++ b/backend/Application/Api/GraphQL/Import/AccountImportHandler.cs @@ -2,6 +2,7 @@ using Application.Api.GraphQL.Blocks; using Application.Common.Diagnostics; using Application.Import; +using Application.Observability; using Concordium.Sdk.Types; namespace Application.Api.GraphQL.Import; @@ -27,7 +28,8 @@ public async Task AddNewAccounts( ulong blockHeight) { if (createdAccounts.Length == 0) return; - + ApplicationMetrics.IncAccountCreated(createdAccounts.Length); + var accounts = _changeCalculator.MapCreatedAccounts(createdAccounts, blockSlotTime, blockHeight).ToArray(); await _writer.InsertAccounts(accounts); diff --git a/backend/Application/Api/GraphQL/Transactions/TransactionTypeUnion.cs b/backend/Application/Api/GraphQL/Transactions/TransactionTypeUnion.cs index f9ed36f91..94e6a3a22 100644 --- a/backend/Application/Api/GraphQL/Transactions/TransactionTypeUnion.cs +++ b/backend/Application/Api/GraphQL/Transactions/TransactionTypeUnion.cs @@ -1,5 +1,4 @@ -using Application.Observability; -using Concordium.Sdk.Types; +using Concordium.Sdk.Types; using HotChocolate; using HotChocolate.Types; @@ -16,7 +15,6 @@ public static TransactionTypeUnion CreateFrom(IBlockItemSummaryDetails value) var _ = TransactionTypeFactory.TryFrom(x.Effects, out var transactionType); return new AccountTransaction { AccountTransactionType = transactionType }; case AccountCreationDetails x: - ApplicationMetrics.IncAccountCreated(x.CredentialType); return new CredentialDeploymentTransaction { CredentialDeploymentTransactionType = x.CredentialType }; case UpdateDetails x: return new UpdateTransaction { UpdateTransactionType = UpdatePayloadFactory.From(x.Payload) }; diff --git a/backend/Application/Observability/ApplicationMetrics.cs b/backend/Application/Observability/ApplicationMetrics.cs index 5bc2a5ef6..31c85dc87 100644 --- a/backend/Application/Observability/ApplicationMetrics.cs +++ b/backend/Application/Observability/ApplicationMetrics.cs @@ -56,11 +56,7 @@ internal static class ApplicationMetrics private static readonly Counter TotalAccountCreated = Metrics.CreateCounter( "accounts_created_total", - "Total number of accounts created", - new CounterConfiguration - { - LabelNames = new[] { "credential_type" } - }); + "Total number of accounts created"); private static void AddProcessDuration(TimeSpan elapsed, string process, ImportSource source, Exception? exception) { @@ -71,11 +67,10 @@ private static void AddProcessDuration(TimeSpan elapsed, string process, ImportS .Observe(elapsedSeconds); } - internal static void IncAccountCreated(CredentialType credentialType) + internal static void IncAccountCreated(int accountsCreated) { TotalAccountCreated - .WithLabels(credentialType.ToString()) - .Inc(); + .Inc(accountsCreated); } internal static void SetReadHeight(double value, string processIdentifier, ImportSource source) From c797c551736d7dda5386df90daff914093f71607 Mon Sep 17 00:00:00 2001 From: schwartz-concordium <132270889+schwartz-concordium@users.noreply.github.com> Date: Wed, 6 Dec 2023 15:47:34 +0100 Subject: [PATCH 3/6] Only down --- .../Contracts/ContractDetailsContent.vue | 25 +++++++----- frontend/src/components/Search/Search.vue | 38 +++++-------------- frontend/src/components/atoms/InfoTooltip.vue | 33 ++++++++++------ frontend/src/components/atoms/TextCopy.vue | 4 -- frontend/src/components/atoms/Tooltip.vue | 32 ++-------------- frontend/src/components/atoms/Validation.vue | 36 +++++------------- frontend/src/composables/useTooltip.ts | 36 ++++-------------- 7 files changed, 67 insertions(+), 137 deletions(-) diff --git a/frontend/src/components/Contracts/ContractDetailsContent.vue b/frontend/src/components/Contracts/ContractDetailsContent.vue index 4ba8517b6..32f491e75 100644 --- a/frontend/src/components/Contracts/ContractDetailsContent.vue +++ b/frontend/src/components/Contracts/ContractDetailsContent.vue @@ -8,23 +8,24 @@ - - + + -