diff --git a/package.json b/package.json index bf9448aa..ab1ec989 100644 --- a/package.json +++ b/package.json @@ -26,14 +26,21 @@ "@galoymoney/client": "^0.1.48", "@galoymoney/react": "^0.1.12", "@opentelemetry/api": "^1.1.0", + "@opentelemetry/context-zone": "^1.7.0", "@opentelemetry/core": "^1.5.0", + "@opentelemetry/exporter-collector": "^0.25.0", "@opentelemetry/exporter-jaeger": "^1.5.0", + "@opentelemetry/exporter-trace-otlp-http": "^0.33.0", "@opentelemetry/instrumentation": "^0.31.0", + "@opentelemetry/instrumentation-document-load": "^0.30.0", + "@opentelemetry/instrumentation-fetch": "^0.33.0", "@opentelemetry/instrumentation-http": "^0.31.0", "@opentelemetry/resources": "^1.5.0", "@opentelemetry/sdk-trace-base": "^1.5.0", "@opentelemetry/sdk-trace-node": "^1.5.0", "@opentelemetry/semantic-conventions": "^1.5.0", + "@opentelemetry/tracing": "^0.24.0", + "@opentelemetry/web": "^0.24.0", "@ory/client": "^0.2.0-alpha.4", "@ory/integrations": "^0.2.6", "@ory/kratos-client": "^0.10.1", diff --git a/src/components/root.tsx b/src/components/root.tsx index 28dd574d..84c53e70 100644 --- a/src/components/root.tsx +++ b/src/components/root.tsx @@ -9,6 +9,7 @@ import { KratosFlowData } from "kratos/index" import { AuthProvider } from "components/auth-provider" import RootComponent from "components/root-component" +import TraceProvider from "store/client-tracing/trace-provider" type RootFCT = React.FC<{ GwwState: GwwStateType }> @@ -38,12 +39,14 @@ const Root: RootFCT = ({ GwwState }) => { return ( - + + + ) diff --git a/src/components/send/send-action-display.tsx b/src/components/send/send-action-display.tsx index ca9a8724..5b9ddf85 100644 --- a/src/components/send/send-action-display.tsx +++ b/src/components/send/send-action-display.tsx @@ -2,8 +2,10 @@ import { MouseEvent } from "react" import { formatUsd, GaloyGQL } from "@galoymoney/client" import { SatFormat, Spinner, SuccessCheckmark } from "@galoymoney/react" +import { Span } from "@opentelemetry/api" import { translate } from "store/index" +import { getTracer, withTracing } from "store/client-tracing/tracing" import useMyUpdates from "hooks/use-my-updates" @@ -59,7 +61,17 @@ const SendActionDisplay: SendActionDisplayFCT = ({ reset, handleSend, }) => { + const recordErrors = (sendError: string, span: Span) => { + span.setAttribute("Error sending payment", sendError) + withTracing("send bitcoin error", span) + } + if (error) { + if (typeof error === "string") { + const tracer = getTracer() + const span = tracer.startSpan("web wallet error") + recordErrors(error, span) + } return
{error}
} diff --git a/src/components/send/send-intra-ledger-action.tsx b/src/components/send/send-intra-ledger-action.tsx index 5f12f4a8..c208181d 100644 --- a/src/components/send/send-intra-ledger-action.tsx +++ b/src/components/send/send-intra-ledger-action.tsx @@ -1,8 +1,11 @@ import { useMutation } from "@galoymoney/client" -import { MouseEvent } from "react" +import React, { MouseEvent } from "react" import SendActionDisplay from "components/send/send-action-display" import { SendActionProps } from "components/send/send-action" +import { getTracer, withTracing, reportSpan } from "store/client-tracing/tracing" + +const tracer = getTracer() export type SendIntraLedgerActionProps = SendActionProps & { recipientWalletId: string @@ -12,23 +15,36 @@ export type SendIntraLedgerActionProps = SendActionProps & { type FCT = React.FC const SendIntraLedgerAction: FCT = (props) => { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const [parentSpan, setParentSpan] = React.useState(null) const [sendPayment, { loading, errorsMessage, data }] = useMutation.intraLedgerPaymentSend() - const handleSend = (event: MouseEvent) => { + const handleSend = async (event: MouseEvent) => { event.preventDefault() - sendPayment({ - variables: { - input: { - walletId: props.btcWalletId, - recipientWalletId: props.recipientWalletId, - amount: props.satAmount, - memo: props.memo, + const rootSpan = tracer.startSpan("web wallet") + await withTracing("intra-ledger send", rootSpan, async () => { + sendPayment({ + variables: { + input: { + walletId: props.btcWalletId, + recipientWalletId: props.recipientWalletId, + amount: props.satAmount, + memo: props.memo, + }, }, - }, + }) }) + setParentSpan(rootSpan) } + React.useEffect(() => { + if (parentSpan) { + parentSpan.end() + reportSpan(parentSpan) + } + }, [parentSpan]) + return ( const SendOnChainAction: FCT = (props) => { + // eslint-disable-next-line @typescript-eslint/no-explicit-any + const [parentSpan, setParentSpan] = React.useState(null) const [sendPayment, { loading, data, errorsMessage: paymentError }] = useMutation.onChainPaymentSend() @@ -29,20 +34,31 @@ const SendOnChainAction: FCT = (props) => { const feeSatAmount = feeData?.onChainTxFee?.amount - const handleSend = (event: MouseEvent) => { + const handleSend = async (event: MouseEvent) => { event.preventDefault() - sendPayment({ - variables: { - input: { - walletId: props.btcWalletId, - address: props.address, - amount: props.satAmount, - memo: props.memo, + const rootSpan = tracer.startSpan("web wallet") + await withTracing("on-chain send", rootSpan, async () => { + sendPayment({ + variables: { + input: { + walletId: props.btcWalletId, + address: props.address, + amount: props.satAmount, + memo: props.memo, + }, }, - }, + }) }) + setParentSpan(rootSpan) } + React.useEffect(() => { + if (parentSpan) { + parentSpan.end() + reportSpan(parentSpan) + } + }, [parentSpan]) + return ( {children} +} diff --git a/src/store/client-tracing/tracing.ts b/src/store/client-tracing/tracing.ts new file mode 100644 index 00000000..77804085 --- /dev/null +++ b/src/store/client-tracing/tracing.ts @@ -0,0 +1,42 @@ +import { trace, context, Span } from "@opentelemetry/api" + +export const reportSpan = (span: Span) => { + console.log("report span:", span) + + fetch("./send-trace", { + method: "POST", + headers: { + "Content-Type": "application/json", + }, + body: JSON.stringify(span), + }) + .then((response) => response.json()) + .then((data) => console.log(data)) + .catch((error) => { + console.error("Error:", error) + }) +} + +export const withTracing = async (name: string, parentSpan: Span, cb?: () => void) => { + const tracer = trace.getTracer("galoy-web-wallet") + let span = trace.getSpan(context.active()) + + if (parentSpan) { + const ctx = trace.setSpan(context.active(), parentSpan) + span = tracer.startSpan(name, undefined, ctx) + } else { + span = tracer.startSpan(name) + } + + if (cb) { + await cb() + } + + span.end() + + reportSpan(span) +} + +export const getTracer = () => { + return trace.getTracer("galoy-web-wallet") +} diff --git a/yarn.lock b/yarn.lock index c9659ca3..4424d0ea 100644 --- a/yarn.lock +++ b/yarn.lock @@ -908,6 +908,11 @@ "@nodelib/fs.scandir" "2.1.5" fastq "^1.6.0" +"@opentelemetry/api-metrics@0.25.0": + version "0.25.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api-metrics/-/api-metrics-0.25.0.tgz#3b996842c8043068da4d11a6e96960e757ad6be9" + integrity sha512-9T0c9NQAEGRujUC7HzPa2/qZ5px/UvB2sfSU5CAKFRrAlDl2gn25B0oUbDqSRHW/IG1X2rnQ3z2bBQkJyJvE4g== + "@opentelemetry/api-metrics@0.31.0": version "0.31.0" resolved "https://registry.yarnpkg.com/@opentelemetry/api-metrics/-/api-metrics-0.31.0.tgz#0ed4cf4d7c731f968721c2b303eaf5e9fd42f736" @@ -915,6 +920,20 @@ dependencies: "@opentelemetry/api" "^1.0.0" +"@opentelemetry/api-metrics@0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api-metrics/-/api-metrics-0.32.0.tgz#0f09f78491a4b301ddf54a8b8a38ffa99981f645" + integrity sha512-g1WLhpG8B6iuDyZJFRGsR+JKyZ94m5LEmY2f+duEJ9Xb4XRlLHrZvh6G34OH6GJ8iDHxfHb/sWjJ1ZpkI9yGMQ== + dependencies: + "@opentelemetry/api" "^1.0.0" + +"@opentelemetry/api-metrics@0.33.0": + version "0.33.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/api-metrics/-/api-metrics-0.33.0.tgz#753d355289b7811ad254d6e5b0193bd1b9f23ab0" + integrity sha512-78evfPRRRnJA6uZ3xuBuS3VZlXTO/LRs+Ff1iv3O/7DgibCtq9k27T6Zlj8yRdJDFmcjcbQrvC0/CpDpWHaZYA== + dependencies: + "@opentelemetry/api" "^1.0.0" + "@opentelemetry/api@^1.0.0": version "1.1.0" resolved "https://registry.yarnpkg.com/@opentelemetry/api/-/api-1.1.0.tgz#563539048255bbe1a5f4f586a4a10a1bb737f44a" @@ -930,6 +949,35 @@ resolved "https://registry.yarnpkg.com/@opentelemetry/context-async-hooks/-/context-async-hooks-1.6.0.tgz#e3839bf8c010d7e660d9762fe2407171d352b88e" integrity sha512-7xpyfHfuHnuCm5eAk4j4MIZjRM/hsiLlKEFIwI8SXNlbxqmb/JRrntOjN/AT+KeihkMw+xAx+0lsYPUANCSaQw== +"@opentelemetry/context-zone-peer-dep@1.7.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/context-zone-peer-dep/-/context-zone-peer-dep-1.7.0.tgz#7e8e642db519d7a4a3168a7bdc4f1a8ad7344383" + integrity sha512-lyY6gXmVTSsx8rdxvQ3EqiEwvyK3iWDJyt2G6nc/kpMon4gQsqPaOylevdVVw9FL5fhJMmJJPiRVHu3qDP63Zg== + +"@opentelemetry/context-zone@^1.7.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/context-zone/-/context-zone-1.7.0.tgz#4d891827d2d9bad79d44ed3b42d8978cdef5c675" + integrity sha512-ngl8uGzQM6/GMX4FtwrZ69qcvsCBA0u2AMwbO+j2aji/SXEqIOr8L9nM7A8/XzBo2UkmOte0jq2Mbir9TnWuZg== + dependencies: + "@opentelemetry/context-zone-peer-dep" "1.7.0" + zone.js "^0.11.0" + +"@opentelemetry/core@0.24.0": + version "0.24.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/core/-/core-0.24.0.tgz#94033ebab10fdf008f8dae19c9547dadef30a2b2" + integrity sha512-KpsfxBbFTZT9zaB4Es/fFLbvSzVl9Io/8UUu/TYl4/HgqkmyVInNlWTgRiKyz9nsHzFpGP1kdZJj+YIut0IFsw== + dependencies: + "@opentelemetry/semantic-conventions" "0.24.0" + semver "^7.1.3" + +"@opentelemetry/core@0.25.0": + version "0.25.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/core/-/core-0.25.0.tgz#44fae79865483be5dacdf72f99db9f1a603c4bae" + integrity sha512-8OTWF4vfCENU112XB5ElLqf0eq/FhsY0SBvvY65vB3+fbZ2Oi+CPsRASrUZWGtC9MJ5rK2lBlY+/jI4a/NPPBg== + dependencies: + "@opentelemetry/semantic-conventions" "0.25.0" + semver "^7.3.5" + "@opentelemetry/core@1.5.0": version "1.5.0" resolved "https://registry.yarnpkg.com/@opentelemetry/core/-/core-1.5.0.tgz#717bceee15d4c69d4c7321c1fe0f5a562b60eb81" @@ -944,6 +992,24 @@ dependencies: "@opentelemetry/semantic-conventions" "1.6.0" +"@opentelemetry/core@1.7.0", "@opentelemetry/core@^1.0.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/core/-/core-1.7.0.tgz#83bdd1b7a4ceafcdffd6590420657caec5f7b34c" + integrity sha512-AVqAi5uc8DrKJBimCTFUT4iFI+5eXpo4sYmGbQ0CypG0piOTHE2g9c5aSoTGYXu3CzOmJZf7pT6Xh+nwm5d6yQ== + dependencies: + "@opentelemetry/semantic-conventions" "1.7.0" + +"@opentelemetry/exporter-collector@^0.25.0": + version "0.25.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/exporter-collector/-/exporter-collector-0.25.0.tgz#5c6a6a95cb2220aba6085f79b561166e150737df" + integrity sha512-xZYstLt4hz1aTloJaepWdjMMf9305MqwqbUWjcU/X9pOxvgFWRlchO6x/HQTw7ow0i/S+ShzC+greKnb+1WvLA== + dependencies: + "@opentelemetry/api-metrics" "0.25.0" + "@opentelemetry/core" "0.25.0" + "@opentelemetry/resources" "0.25.0" + "@opentelemetry/sdk-metrics-base" "0.25.0" + "@opentelemetry/sdk-trace-base" "0.25.0" + "@opentelemetry/exporter-jaeger@^1.5.0": version "1.6.0" resolved "https://registry.yarnpkg.com/@opentelemetry/exporter-jaeger/-/exporter-jaeger-1.6.0.tgz#aec09659fe2d81228bdd04a38a542535ff3c2771" @@ -954,6 +1020,38 @@ "@opentelemetry/semantic-conventions" "1.6.0" jaeger-client "^3.15.0" +"@opentelemetry/exporter-trace-otlp-http@^0.33.0": + version "0.33.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/exporter-trace-otlp-http/-/exporter-trace-otlp-http-0.33.0.tgz#3b03847ec266c6acf098d89ce160347826358acc" + integrity sha512-bRMseTWB1NSrJtbCgf/ema5XO+o9Nj+Y4YbdTLg2n7gnsdoEW/l2Li+JXyxP7rgAsE3cLeekTmNp0IWq5t4TnA== + dependencies: + "@opentelemetry/core" "1.7.0" + "@opentelemetry/otlp-exporter-base" "0.33.0" + "@opentelemetry/otlp-transformer" "0.33.0" + "@opentelemetry/resources" "1.7.0" + "@opentelemetry/sdk-trace-base" "1.7.0" + +"@opentelemetry/instrumentation-document-load@^0.30.0": + version "0.30.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-document-load/-/instrumentation-document-load-0.30.0.tgz#b6c67823f3ded002f4a9c97d6f362e1ed353df2c" + integrity sha512-/QW7nkfXamdRmiPKPS7pky2PxJ32wbYNMgXQk99wiZoW7oXTmW/1e33jtAXayHqzufq45y5WY+EetQ2gtPNH/Q== + dependencies: + "@opentelemetry/core" "^1.0.0" + "@opentelemetry/instrumentation" "^0.32.0" + "@opentelemetry/sdk-trace-base" "^1.0.0" + "@opentelemetry/sdk-trace-web" "^1.0.0" + "@opentelemetry/semantic-conventions" "^1.0.0" + +"@opentelemetry/instrumentation-fetch@^0.33.0": + version "0.33.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-fetch/-/instrumentation-fetch-0.33.0.tgz#9225444665fafb38a730650c88821ceea490a86f" + integrity sha512-HrQUPIpQQBm3h1EWhiaGDLUaoCwxXwoOICcfGNaNBel93UZETDPCiVOje8V1vTcsMcOkcl1xLQEx1BLZ4eUwkQ== + dependencies: + "@opentelemetry/core" "1.7.0" + "@opentelemetry/instrumentation" "0.33.0" + "@opentelemetry/sdk-trace-web" "1.7.0" + "@opentelemetry/semantic-conventions" "1.7.0" + "@opentelemetry/instrumentation-http@^0.31.0": version "0.31.0" resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation-http/-/instrumentation-http-0.31.0.tgz#5c6dea9cdb636543c6ed1f1a4e55d4422e50fa89" @@ -974,6 +1072,44 @@ semver "^7.3.2" shimmer "^1.2.1" +"@opentelemetry/instrumentation@0.33.0": + version "0.33.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation/-/instrumentation-0.33.0.tgz#7bced3a13bc2731670d5a23a2fb45353142d8da4" + integrity sha512-8joPjKJ6TznNt04JbnzZG+m1j/4wm1OIrX7DEw/V5lyZ9/2fahIqG72jeZ26VKOZnLOpVzUUnU/dweURqBzT3Q== + dependencies: + "@opentelemetry/api-metrics" "0.33.0" + require-in-the-middle "^5.0.3" + semver "^7.3.2" + shimmer "^1.2.1" + +"@opentelemetry/instrumentation@^0.32.0": + version "0.32.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/instrumentation/-/instrumentation-0.32.0.tgz#27c5975a323a2ba83d9bf2ea8b11faaab37c5827" + integrity sha512-y6ADjHpkUz/v1nkyyYjsQa/zorhX+0qVGpFvXMcbjU4sHnBnC02c6wcc93sIgZfiQClIWo45TGku1KQxJ5UUbQ== + dependencies: + "@opentelemetry/api-metrics" "0.32.0" + require-in-the-middle "^5.0.3" + semver "^7.3.2" + shimmer "^1.2.1" + +"@opentelemetry/otlp-exporter-base@0.33.0": + version "0.33.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-exporter-base/-/otlp-exporter-base-0.33.0.tgz#bfbdf9bd7b54b92f9d939df99639f30d6a917481" + integrity sha512-st+nsgv23BXSARFwugy6pheulDfOKjIFvzoYOUzPQDVhQtU8+l7dc50rIEybwXghb13o7mZs6Nb8KOvRk57qww== + dependencies: + "@opentelemetry/core" "1.7.0" + +"@opentelemetry/otlp-transformer@0.33.0": + version "0.33.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/otlp-transformer/-/otlp-transformer-0.33.0.tgz#6fd3ddc944f017da08d445f142cad1779770e0e0" + integrity sha512-L4OpsUaki9/Fib17t44YkDvAz3RpMZTtl6hYBhcTqAnqY0wVBpQf0ra25GyHQTKj+oiA//ZxvOlmmM/dXCYxoQ== + dependencies: + "@opentelemetry/api-metrics" "0.33.0" + "@opentelemetry/core" "1.7.0" + "@opentelemetry/resources" "1.7.0" + "@opentelemetry/sdk-metrics" "0.33.0" + "@opentelemetry/sdk-trace-base" "1.7.0" + "@opentelemetry/propagator-b3@1.6.0": version "1.6.0" resolved "https://registry.yarnpkg.com/@opentelemetry/propagator-b3/-/propagator-b3-1.6.0.tgz#db0dee4f28cb4f1830f3cd35013b652b8078f355" @@ -988,6 +1124,22 @@ dependencies: "@opentelemetry/core" "1.6.0" +"@opentelemetry/resources@0.24.0": + version "0.24.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/resources/-/resources-0.24.0.tgz#834e5a4d0a64ed4de085add8308be203959c44b4" + integrity sha512-uEr2m13IRkjQAjX6fsYqJ21aONCspRvuQunaCl8LbH1NS1Gj82TuRUHF6TM82ulBPK8pU+nrrqXKuky2cMcIzw== + dependencies: + "@opentelemetry/core" "0.24.0" + "@opentelemetry/semantic-conventions" "0.24.0" + +"@opentelemetry/resources@0.25.0": + version "0.25.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/resources/-/resources-0.25.0.tgz#a780ab536577359ca9ebe93ccc5d02ba8c3fb2ce" + integrity sha512-O46u53vDBlxCML8O9dIjsRcCC2VT5ri1upwhp02ITobgJ16aVD/iScCo1lPl/x2E7yq9uwzMINENiiYZRFb6XA== + dependencies: + "@opentelemetry/core" "0.25.0" + "@opentelemetry/semantic-conventions" "0.25.0" + "@opentelemetry/resources@1.6.0", "@opentelemetry/resources@^1.5.0": version "1.6.0" resolved "https://registry.yarnpkg.com/@opentelemetry/resources/-/resources-1.6.0.tgz#9756894131b9b0dfbcc0cecb5d4bd040d9c1b09d" @@ -996,6 +1148,44 @@ "@opentelemetry/core" "1.6.0" "@opentelemetry/semantic-conventions" "1.6.0" +"@opentelemetry/resources@1.7.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/resources/-/resources-1.7.0.tgz#90ccd3a6a86b4dfba4e833e73944bd64958d78c5" + integrity sha512-u1M0yZotkjyKx8dj+46Sg5thwtOTBmtRieNXqdCRiWUp6SfFiIP0bI+1XK3LhuXqXkBXA1awJZaTqKduNMStRg== + dependencies: + "@opentelemetry/core" "1.7.0" + "@opentelemetry/semantic-conventions" "1.7.0" + +"@opentelemetry/sdk-metrics-base@0.25.0": + version "0.25.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-metrics-base/-/sdk-metrics-base-0.25.0.tgz#3ac340ef9f1ff7c649339bb031f6c390a2c8ed70" + integrity sha512-7fwPlAFB5Xw8mnVQfq0wqKNw3RXiAMad9T1bk5Sza9LK/L6hz8RTuHWCsFMsj+1OOSAaiPFuUMYrK1J75+2IAg== + dependencies: + "@opentelemetry/api-metrics" "0.25.0" + "@opentelemetry/core" "0.25.0" + "@opentelemetry/resources" "0.25.0" + lodash.merge "^4.6.2" + +"@opentelemetry/sdk-metrics@0.33.0": + version "0.33.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-metrics/-/sdk-metrics-0.33.0.tgz#c4e51decc6e3bb0e1e97c7b081955d357e46c2fe" + integrity sha512-ZXPixOlTd/FHLwpkmm5nTpJE7bZOPfmbSz8hBVFCEHkXE1aKEKaM38UFnZ+2xzOY1tDsDwyxEiiBiDX8y3039A== + dependencies: + "@opentelemetry/api-metrics" "0.33.0" + "@opentelemetry/core" "1.7.0" + "@opentelemetry/resources" "1.7.0" + lodash.merge "4.6.2" + +"@opentelemetry/sdk-trace-base@0.25.0": + version "0.25.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-base/-/sdk-trace-base-0.25.0.tgz#4393903a7db8a5ae81a99c4a34121df67e4fdfbe" + integrity sha512-TInkLSF/ThM3GNVM+9tgnCVjyNLnRxvAkG585Fhu0HNwaEtCTUwI0r7AvMRIREOreeRWttBG6kvT0LOKdo8yjw== + dependencies: + "@opentelemetry/core" "0.25.0" + "@opentelemetry/resources" "0.25.0" + "@opentelemetry/semantic-conventions" "0.25.0" + lodash.merge "^4.6.2" + "@opentelemetry/sdk-trace-base@1.6.0", "@opentelemetry/sdk-trace-base@^1.5.0": version "1.6.0" resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.6.0.tgz#8b1511c0b0f3e6015e345f5ed4a683adf03e3e3c" @@ -1005,6 +1195,15 @@ "@opentelemetry/resources" "1.6.0" "@opentelemetry/semantic-conventions" "1.6.0" +"@opentelemetry/sdk-trace-base@1.7.0", "@opentelemetry/sdk-trace-base@^1.0.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-base/-/sdk-trace-base-1.7.0.tgz#b498424e0c6340a9d80de63fd408c5c2130a60a5" + integrity sha512-Iz84C+FVOskmauh9FNnj4+VrA+hG5o+tkMzXuoesvSfunVSioXib0syVFeNXwOm4+M5GdWCuW632LVjqEXStIg== + dependencies: + "@opentelemetry/core" "1.7.0" + "@opentelemetry/resources" "1.7.0" + "@opentelemetry/semantic-conventions" "1.7.0" + "@opentelemetry/sdk-trace-node@^1.5.0": version "1.6.0" resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-node/-/sdk-trace-node-1.6.0.tgz#fb15e030b19931f1cd6ad755add2bfd77fb915b6" @@ -1017,6 +1216,25 @@ "@opentelemetry/sdk-trace-base" "1.6.0" semver "^7.3.5" +"@opentelemetry/sdk-trace-web@1.7.0", "@opentelemetry/sdk-trace-web@^1.0.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/sdk-trace-web/-/sdk-trace-web-1.7.0.tgz#6c8b8a1f5775f27755cb207b8444579c4b9d14c4" + integrity sha512-c+Aq9lMv6MIItJF6XiXCfqyCq/x4VgF6GoKY5aygsxapu1bVk96qaLfGkuQvlUlT2KlyaI6INQiFwQegBXoYiQ== + dependencies: + "@opentelemetry/core" "1.7.0" + "@opentelemetry/sdk-trace-base" "1.7.0" + "@opentelemetry/semantic-conventions" "1.7.0" + +"@opentelemetry/semantic-conventions@0.24.0": + version "0.24.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-0.24.0.tgz#1028ef0e0923b24916158d80d2ddfd67ea8b6740" + integrity sha512-a/szuMQV0Quy0/M7kKdglcbRSoorleyyOwbTNNJ32O+RBN766wbQlMTvdimImTmwYWGr+NJOni1EcC242WlRcA== + +"@opentelemetry/semantic-conventions@0.25.0": + version "0.25.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-0.25.0.tgz#c100d146957949608c6b9614267ae044cdcb5315" + integrity sha512-V3N+MDBiv0TUlorbgiSqk6CvcP876CYUk/41Tg6s8OIyvniTwprE6vPvFQayuABiVkGlHOxv1Mlvp0w4qNdnVg== + "@opentelemetry/semantic-conventions@1.5.0": version "1.5.0" resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-1.5.0.tgz#cea9792bfcf556c87ded17c6ac729348697bb632" @@ -1027,6 +1245,30 @@ resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-1.6.0.tgz#ed410c9eb0070491cff9fe914246ce41f88d6f74" integrity sha512-aPfcBeLErM/PPiAuAbNFLN5sNbZLc3KZlar27uohllN8Zs6jJbHyJU1y7cMA6W/zuq+thkaG8mujiS+3iD/FWQ== +"@opentelemetry/semantic-conventions@1.7.0", "@opentelemetry/semantic-conventions@^1.0.0": + version "1.7.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/semantic-conventions/-/semantic-conventions-1.7.0.tgz#af80a1ef7cf110ea3a68242acd95648991bcd763" + integrity sha512-FGBx/Qd09lMaqQcogCHyYrFEpTx4cAjeS+48lMIR12z7LdH+zofGDVQSubN59nL6IpubfKqTeIDu9rNO28iHVA== + +"@opentelemetry/tracing@0.24.0", "@opentelemetry/tracing@^0.24.0": + version "0.24.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/tracing/-/tracing-0.24.0.tgz#63077fe77b2f450442cb36710ea355db76f60faa" + integrity sha512-sTLEs1SIon3xV8vLe53PzfbU0FahoxL9NPY/CYvA1mwGbMu4zHkHAjqy1Tc8JmqRrfa+XrHkmzeSM4hrvloBaA== + dependencies: + "@opentelemetry/core" "0.24.0" + "@opentelemetry/resources" "0.24.0" + "@opentelemetry/semantic-conventions" "0.24.0" + lodash.merge "^4.6.2" + +"@opentelemetry/web@^0.24.0": + version "0.24.0" + resolved "https://registry.yarnpkg.com/@opentelemetry/web/-/web-0.24.0.tgz#911bcb81e34c0419e49f0cfb9e1be845a5475dc6" + integrity sha512-yxAKj7bQ3czfif9MtYXaSJrgRcrLUNltslyhEE+Oh7Ojh9XQ0Q5RhPnE9cwHdR7yp1+HjbEHE+I91QIMKMlVWA== + dependencies: + "@opentelemetry/core" "0.24.0" + "@opentelemetry/semantic-conventions" "0.24.0" + "@opentelemetry/tracing" "0.24.0" + "@ory/client@^0.2.0-alpha.16", "@ory/client@^0.2.0-alpha.4": version "0.2.0-alpha.25" resolved "https://registry.yarnpkg.com/@ory/client/-/client-0.2.0-alpha.25.tgz#c45064a0449dd3f438e16ed956a22f3207ca3212" @@ -5233,7 +5475,7 @@ lodash.memoize@4.x: resolved "https://registry.yarnpkg.com/lodash.memoize/-/lodash.memoize-4.1.2.tgz#bcc6c49a42a2840ed997f323eada5ecd182e0bfe" integrity sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag== -lodash.merge@^4.6.2: +lodash.merge@4.6.2, lodash.merge@^4.6.2: version "4.6.2" resolved "https://registry.yarnpkg.com/lodash.merge/-/lodash.merge-4.6.2.tgz#558aa53b43b661e1925a0afdfa36a9a1085fe57a" integrity sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ== @@ -6873,7 +7115,7 @@ secp256k1@^4.0.2: node-addon-api "^2.0.0" node-gyp-build "^4.2.0" -semver@7.x, semver@^7.3.5, semver@^7.3.7: +semver@7.x, semver@^7.1.3, semver@^7.3.5, semver@^7.3.7: version "7.3.7" resolved "https://registry.yarnpkg.com/semver/-/semver-7.3.7.tgz#12c5b649afdbf9049707796e22a4028814ce523f" integrity sha512-QlYTucUYOews+WeEujDoEGziz4K6c47V/Bd+LjSSYcA94p+DmINdf7ncaUinThfvZyu13lN9OY1XDxt8C0Tw0g== @@ -8120,3 +8362,10 @@ zen-observable@0.8.15: version "0.8.15" resolved "https://registry.yarnpkg.com/zen-observable/-/zen-observable-0.8.15.tgz#96415c512d8e3ffd920afd3889604e30b9eaac15" integrity sha512-PQ2PC7R9rslx84ndNBZB/Dkv8V8fZEpk83RLgXtYd0fwUgEjseMn1Dgajh2x6S8QbZAFa9p2qVCEuYZNgve0dQ== + +zone.js@^0.11.0: + version "0.11.8" + resolved "https://registry.yarnpkg.com/zone.js/-/zone.js-0.11.8.tgz#40dea9adc1ad007b5effb2bfed17f350f1f46a21" + integrity sha512-82bctBg2hKcEJ21humWIkXRlLBBmrc3nN7DFh5LGGhcyycO2S7FN8NmdvlcKaGFDNVL4/9kFLmwmInTavdJERA== + dependencies: + tslib "^2.3.0"