Browse Source

Added LogPerformance

pull/5027/head
Dan 1 year ago
parent
commit
127587878d
  1. 2
      apps/api/src/app/account/account.service.ts
  2. 2
      apps/api/src/app/order/order.service.ts
  3. 2
      apps/api/src/app/portfolio/calculator/portfolio-calculator.factory.ts
  4. 12
      apps/api/src/app/portfolio/calculator/portfolio-calculator.ts
  5. 3
      apps/api/src/app/portfolio/calculator/twr/portfolio-calculator.ts
  6. 2
      apps/api/src/app/portfolio/portfolio.service.ts

2
apps/api/src/app/account/account.service.ts

@ -1,3 +1,4 @@
import { LogPerformance } from '@ghostfolio/api/aop/logging.interceptor';
import { AccountBalanceService } from '@ghostfolio/api/app/account-balance/account-balance.service';
import { PortfolioChangedEvent } from '@ghostfolio/api/events/portfolio-changed.event';
import { ExchangeRateDataService } from '@ghostfolio/api/services/exchange-rate-data/exchange-rate-data.service';
@ -149,6 +150,7 @@ export class AccountService {
});
}
@LogPerformance
public async getCashDetails({
currency,
filters = [],

2
apps/api/src/app/order/order.service.ts

@ -1,3 +1,4 @@
import { LogPerformance } from '@ghostfolio/api/aop/logging.interceptor';
import { AccountService } from '@ghostfolio/api/app/account/account.service';
import { PortfolioChangedEvent } from '@ghostfolio/api/events/portfolio-changed.event';
import { DataGatheringService } from '@ghostfolio/api/services/data-gathering/data-gathering.service';
@ -240,6 +241,7 @@ export class OrderService {
});
}
@LogPerformance
public async getOrders({
endDate,
filters,

2
apps/api/src/app/portfolio/calculator/portfolio-calculator.factory.ts

@ -1,3 +1,4 @@
import { LogPerformance } from '@ghostfolio/api/aop/logging.interceptor';
import { Activity } from '@ghostfolio/api/app/order/interfaces/activities.interface';
import { CurrentRateService } from '@ghostfolio/api/app/portfolio/current-rate.service';
import { RedisCacheService } from '@ghostfolio/api/app/redis-cache/redis-cache.service';
@ -30,6 +31,7 @@ export class PortfolioCalculatorFactory {
private readonly orderservice: OrderService
) {}
@LogPerformance
public createCalculator({
accountBalanceItems = [],
activities,

12
apps/api/src/app/portfolio/calculator/portfolio-calculator.ts

@ -1,3 +1,4 @@
import { LogPerformance } from '@ghostfolio/api/aop/logging.interceptor';
import { Activity } from '@ghostfolio/api/app/order/interfaces/activities.interface';
import { CurrentRateService } from '@ghostfolio/api/app/portfolio/current-rate.service';
import { PortfolioOrder } from '@ghostfolio/api/app/portfolio/interfaces/portfolio-order.interface';
@ -148,6 +149,7 @@ export abstract class PortfolioCalculator {
positions: TimelinePosition[]
): PortfolioSnapshot;
@LogPerformance
public async computeSnapshot(
start: Date,
end?: Date
@ -422,6 +424,7 @@ export abstract class PortfolioCalculator {
};
}
@LogPerformance
public async getChart({
dateRange = 'max',
withDataDecimation = true,
@ -445,6 +448,7 @@ export abstract class PortfolioCalculator {
});
}
@LogPerformance
public async getChartData({
end = new Date(Date.now()),
start,
@ -785,10 +789,12 @@ export abstract class PortfolioCalculator {
});
}
@LogPerformance
public getDataProviderInfos() {
return this.dataProviderInfos;
}
@LogPerformance
public async getDividendInBaseCurrency() {
await this.snapshotPromise;
@ -799,18 +805,21 @@ export abstract class PortfolioCalculator {
);
}
@LogPerformance
public async getFeesInBaseCurrency() {
await this.snapshotPromise;
return this.snapshot.totalFeesWithCurrencyEffect;
}
@LogPerformance
public async getInterestInBaseCurrency() {
await this.snapshotPromise;
return this.snapshot.totalInterestWithCurrencyEffect;
}
@LogPerformance
public getInvestments(): { date: string; investment: Big }[] {
if (this.transactionPoints.length === 0) {
return [];
@ -828,6 +837,7 @@ export abstract class PortfolioCalculator {
});
}
@LogPerformance
public getInvestmentsByGroup({
data,
groupBy
@ -851,12 +861,14 @@ export abstract class PortfolioCalculator {
}));
}
@LogPerformance
public async getLiabilitiesInBaseCurrency() {
await this.snapshotPromise;
return this.snapshot.totalLiabilitiesWithCurrencyEffect;
}
@LogPerformance
public async getSnapshot() {
await this.snapshotPromise;

3
apps/api/src/app/portfolio/calculator/twr/portfolio-calculator.ts

@ -1,3 +1,4 @@
import { LogPerformance } from '@ghostfolio/api/aop/logging.interceptor';
import { PortfolioCalculator } from '@ghostfolio/api/app/portfolio/calculator/portfolio-calculator';
import { PortfolioOrderItem } from '@ghostfolio/api/app/portfolio/interfaces/portfolio-order-item.interface';
import { getFactor } from '@ghostfolio/api/helper/portfolio.helper';
@ -17,6 +18,7 @@ import {
import { cloneDeep, first, last, sortBy } from 'lodash';
export class TWRPortfolioCalculator extends PortfolioCalculator {
@LogPerformance
protected calculateOverallPerformance(
positions: TimelinePosition[]
): PortfolioSnapshot {
@ -133,6 +135,7 @@ export class TWRPortfolioCalculator extends PortfolioCalculator {
};
}
@LogPerformance
protected getSymbolMetrics({
dataSource,
end,

2
apps/api/src/app/portfolio/portfolio.service.ts

@ -211,6 +211,7 @@ export class PortfolioService {
};
}
@LogPerformance
public getAnnualizedPerformancePercent({
daysInMarket,
netPerformancePercentage
@ -229,6 +230,7 @@ export class PortfolioService {
return new Big(0);
}
@LogPerformance
public async getDividends({
activities,
groupBy

Loading…
Cancel
Save