-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathsettings.js
More file actions
34 lines (25 loc) · 955 Bytes
/
settings.js
File metadata and controls
34 lines (25 loc) · 955 Bytes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
const emailAddress = 'your-email@example.com';
const slackWebhookUrl = 'https://hooks.slack.com/services/YOUR/SLACK/WEBHOOK';
const subject = "Data Quality Alert: Issues Detected in Dataset";
const projectId = 'your-gcp-project-id';
const datasetId = 'your_dataset_id';
const config = [
{ table: 'TableOne', fields: ['ID'] },
{ table: 'TableTwo', fields: ['Record ID'] },
{ table: 'TableThree', fields: ['Entry ID', 'Reference ID'] },
// Add more tables and their unique/not-null fields here
];
function executeBigQueryQuery(query) {
const request = {
query: query,
useLegacySql: false
};
let queryResults = BigQuery.Jobs.query(request, projectId);
const jobId = queryResults.jobReference.jobId;
// Poll until job completes
while (!queryResults.jobComplete) {
Utilities.sleep(1000);
queryResults = BigQuery.Jobs.getQueryResults(projectId, jobId);
}
return queryResults;
}