@@ -7,6 +7,7 @@ namespace GCPCostNotifier.Services;
7
7
public class CostQueryService (
8
8
string projectId ,
9
9
string targetTableName ,
10
+ string billingTargetProjectId ,
10
11
IDateTimeCalculationService dateTimeCalculationService ,
11
12
ILogger < CostQueryService > logger
12
13
) : ICostQueryService
@@ -17,7 +18,8 @@ public async Task<IList<CostSummary>> GetYesterdayCostSummaryAsync(
17
18
CancellationToken cancellationToken
18
19
)
19
20
{
20
- var calculatedDateTimes = dateTimeCalculationService . CalculateDateTimeOffsetsForYesterday ( targetDateTimeOffset , targetTimeZoneInfo ) ;
21
+ var calculatedDateTimes =
22
+ dateTimeCalculationService . CalculateDateTimeOffsetsForYesterday ( targetDateTimeOffset , targetTimeZoneInfo ) ;
21
23
22
24
var query =
23
25
@$ "
@@ -28,7 +30,8 @@ CancellationToken cancellationToken
28
30
FROM `{ targetTableName } `
29
31
WHERE
30
32
_PARTITIONTIME BETWEEN @partitionStartDateTime AND @partitionEndDateTime AND
31
- usage_start_time >= @startDateTime AND usage_end_time <= @endDateTime
33
+ usage_start_time >= @startDateTime AND usage_end_time <= @endDateTime AND
34
+ `project`.`id` = @billingTargetProjectId
32
35
GROUP BY service.description, sku.description
33
36
HAVING SummarizedCost > 0
34
37
ORDER BY ServiceName, ServiceDescription" ;
@@ -64,6 +67,11 @@ HAVING SummarizedCost > 0
64
67
"endDateTime" ,
65
68
BigQueryDbType . Timestamp ,
66
69
calculatedDateTimes . EndOffsetDateTimeOffset
70
+ ) ,
71
+ new BigQueryParameter (
72
+ "billingTargetProjectId" ,
73
+ BigQueryDbType . String ,
74
+ billingTargetProjectId
67
75
)
68
76
} ,
69
77
cancellationToken : cancellationToken
0 commit comments