summaryrefslogtreecommitdiff
path: root/packages
diff options
context:
space:
mode:
authorFlorian Dold <florian@dold.me>2024-04-22 20:02:57 +0200
committerFlorian Dold <florian@dold.me>2024-04-22 20:02:57 +0200
commit9596660e65ea89bbe93aa31cd3d7218f471b54a5 (patch)
treecc6b4e42f81447b170d75121f61201feb7b64309 /packages
parent0dbb4ddd2b8073ac716e7a57a5280a8278d0d56a (diff)
downloadwallet-core-9596660e65ea89bbe93aa31cd3d7218f471b54a5.tar.gz
wallet-core-9596660e65ea89bbe93aa31cd3d7218f471b54a5.tar.bz2
wallet-core-9596660e65ea89bbe93aa31cd3d7218f471b54a5.zip
taler-wallet-cli: log observability events also for run-until-done
Diffstat (limited to 'packages')
-rw-r--r--packages/taler-wallet-cli/src/index.ts41
1 files changed, 17 insertions, 24 deletions
diff --git a/packages/taler-wallet-cli/src/index.ts b/packages/taler-wallet-cli/src/index.ts
index 59be964b2..8c4760223 100644
--- a/packages/taler-wallet-cli/src/index.ts
+++ b/packages/taler-wallet-cli/src/index.ts
@@ -300,6 +300,17 @@ async function createLocalWallet(
}
}
+function writeObservabilityLog(notif: WalletNotification): void {
+ if (observabilityEventFile) {
+ switch (notif.type) {
+ case NotificationType.RequestObservabilityEvent:
+ case NotificationType.TaskObservabilityEvent:
+ fs.appendFileSync(observabilityEventFile, JSON.stringify(notif) + "\n");
+ break;
+ }
+ }
+}
+
async function withWallet<T>(
walletCliArgs: WalletCliArgsType,
f: (ctx: WalletContext) => Promise<T>,
@@ -308,17 +319,7 @@ async function withWallet<T>(
const onNotif = (notif: WalletNotification) => {
waiter.notify(notif);
- if (observabilityEventFile) {
- switch (notif.type) {
- case NotificationType.RequestObservabilityEvent:
- case NotificationType.TaskObservabilityEvent:
- fs.appendFileSync(
- observabilityEventFile,
- JSON.stringify(notif) + "\n",
- );
- break;
- }
- }
+ writeObservabilityLog(notif);
};
if (walletCliArgs.wallet.walletConnection) {
@@ -366,7 +367,9 @@ async function withLocalWallet<T>(
walletCliArgs: WalletCliArgsType,
f: (w: { client: WalletCoreApiClient; ws: Wallet }) => Promise<T>,
): Promise<T> {
- const wh = await createLocalWallet(walletCliArgs);
+ const wh = await createLocalWallet(walletCliArgs, (notif) => {
+ writeObservabilityLog(notif);
+ });
const w = wh.wallet;
const res = await f({ client: w.client, ws: w });
logger.info("Work done, stopping wallet.");
@@ -988,7 +991,7 @@ depositCli
.requiredArgument("amount", clk.AMOUNT)
.requiredArgument("targetPayto", clk.STRING)
.action(async (args) => {
- await withLocalWallet(args, async (wallet) => {
+ await withWallet(args, async (wallet) => {
const resp = await wallet.client.call(
WalletApiOperation.CreateDepositGroup,
{
@@ -1231,17 +1234,7 @@ advancedCli
process.on("SIGINT", cleanupSocket);
const onNotif = (notif: WalletNotification) => {
- if (observabilityEventFile) {
- switch (notif.type) {
- case NotificationType.RequestObservabilityEvent:
- case NotificationType.TaskObservabilityEvent:
- fs.appendFileSync(
- observabilityEventFile,
- JSON.stringify(notif) + "\n",
- );
- break;
- }
- }
+ writeObservabilityLog(notif);
};
const wh = await createLocalWallet(args, onNotif, args.serve.noInit);
const w = wh.wallet;