Skip to content

Commit 3b0da2a

Browse files
authored
Merge pull request #221 from intelops/datetime
modified all schemas for including datetime in utc
2 parents cfc98a2 + 933c2e4 commit 3b0da2a

File tree

4 files changed

+220
-119
lines changed

4 files changed

+220
-119
lines changed

client/pkg/clickhouse/db_client.go

Lines changed: 58 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -74,7 +74,7 @@ func NewDBClient(conf *config.Config) (DBInterface, error) {
7474
return nil, err
7575
}
7676

77-
tables := []DBStatement{kubvizTable, rakeesTable, kubePugDepricatedTable, kubepugDeletedTable, ketallTable, trivyTableImage, trivySbomTable, outdateTable, clickhouseExperimental, containerDockerhubTable, containerGithubTable, kubescoreTable, trivyTableVul, trivyTableMisconfig, dockerHubBuildTable, azureContainerPushEventTable, quayContainerPushEventTable, jfrogContainerPushEventTable, DBStatement(dbstatement.AzureDevopsTable), DBStatement(dbstatement.GithubTable), DBStatement(dbstatement.GitlabTable), DBStatement(dbstatement.BitbucketTable), DBStatement(dbstatement.GiteaTable)}
77+
tables := []DBStatement{kubvizTable, rakeesTable, kubePugDepricatedTable, kubepugDeletedTable, ketallTable, trivyTableImage, trivySbomTable, outdateTable, clickhouseExperimental, containerGithubTable, kubescoreTable, trivyTableVul, trivyTableMisconfig, dockerHubBuildTable, azureContainerPushEventTable, quayContainerPushEventTable, jfrogContainerPushEventTable, DBStatement(dbstatement.AzureDevopsTable), DBStatement(dbstatement.GithubTable), DBStatement(dbstatement.GitlabTable), DBStatement(dbstatement.BitbucketTable), DBStatement(dbstatement.GiteaTable)}
7878
for _, table := range tables {
7979
if err = splconn.Exec(context.Background(), string(table)); err != nil {
8080
return nil, err
@@ -93,12 +93,16 @@ func NewDBClient(conf *config.Config) (DBInterface, error) {
9393
}
9494
return &DBClient{splconn: splconn, conn: stdconn, conf: conf}, nil
9595
}
96+
9697
func (c *DBClient) InsertContainerEventAzure(pushEvent model.AzureContainerPushEventPayload) {
9798
var (
9899
tx, _ = c.conn.Begin()
99100
stmt, _ = tx.Prepare(string(InsertAzureContainerPushEvent))
100101
)
101102
defer stmt.Close()
103+
104+
currentTime := time.Now().UTC()
105+
102106
registryURL := pushEvent.Request.Host
103107
repositoryName := pushEvent.Target.Repository
104108
tag := pushEvent.Target.Tag
@@ -110,7 +114,6 @@ func (c *DBClient) InsertContainerEventAzure(pushEvent model.AzureContainerPushE
110114
size := pushEvent.Target.Size
111115
shaID := pushEvent.Target.Digest
112116

113-
// Marshaling the pushEvent into a JSON string
114117
pushEventJSON, err := json.Marshal(pushEvent)
115118
if err != nil {
116119
log.Printf("Error while marshaling Azure Container Registry payload: %v", err)
@@ -126,22 +129,26 @@ func (c *DBClient) InsertContainerEventAzure(pushEvent model.AzureContainerPushE
126129
pushEvent.Timestamp,
127130
size,
128131
shaID,
132+
currentTime,
129133
); err != nil {
130134
log.Fatal(err)
131135
}
132136
if err := tx.Commit(); err != nil {
133137
log.Fatal(err)
134138
}
135139
}
140+
136141
func (c *DBClient) InsertContainerEventQuay(pushEvent model.QuayImagePushPayload) {
137142
var (
138143
tx, _ = c.conn.Begin()
139144
stmt, _ = tx.Prepare(string(InsertQuayContainerPushEvent))
140145
)
141146
defer stmt.Close()
147+
148+
currentTime := time.Now().UTC()
149+
142150
dockerURL := pushEvent.DockerURL
143151
repository := pushEvent.Repository
144-
//tag := pushEvent.UpdatedTags
145152
name := pushEvent.Name
146153
nameSpace := pushEvent.Namespace
147154
homePage := pushEvent.Homepage
@@ -153,7 +160,6 @@ func (c *DBClient) InsertContainerEventQuay(pushEvent model.QuayImagePushPayload
153160
tag = ""
154161
}
155162

156-
// Marshaling the pushEvent into a JSON string
157163
pushEventJSON, err := json.Marshal(pushEvent)
158164
if err != nil {
159165
log.Printf("Error while marshaling Quay Container Registry payload: %v", err)
@@ -168,19 +174,24 @@ func (c *DBClient) InsertContainerEventQuay(pushEvent model.QuayImagePushPayload
168174
homePage,
169175
tag,
170176
string(pushEventJSON),
177+
currentTime,
171178
); err != nil {
172179
log.Fatal(err)
173180
}
174181
if err := tx.Commit(); err != nil {
175182
log.Fatal(err)
176183
}
177184
}
185+
178186
func (c *DBClient) InsertContainerEventJfrog(pushEvent model.JfrogContainerPushEventPayload) {
179187
var (
180188
tx, _ = c.conn.Begin()
181189
stmt, _ = tx.Prepare(string(InsertJfrogContainerPushEvent))
182190
)
183191
defer stmt.Close()
192+
193+
currentTime := time.Now().UTC()
194+
184195
registryURL := pushEvent.Data.Path
185196
repositoryName := pushEvent.Data.Name
186197
tag := pushEvent.Data.Tag
@@ -192,7 +203,6 @@ func (c *DBClient) InsertContainerEventJfrog(pushEvent model.JfrogContainerPushE
192203
size := pushEvent.Data.Size
193204
shaID := pushEvent.Data.SHA256
194205

195-
// Marshaling the pushEvent into a JSON string
196206
pushEventJSON, err := json.Marshal(pushEvent)
197207
if err != nil {
198208
log.Printf("Error while marshaling Jfrog Container Registry payload: %v", err)
@@ -209,58 +219,73 @@ func (c *DBClient) InsertContainerEventJfrog(pushEvent model.JfrogContainerPushE
209219
imageName,
210220
tag,
211221
string(pushEventJSON),
222+
currentTime,
212223
); err != nil {
213224
log.Fatal(err)
214225
}
215226
if err := tx.Commit(); err != nil {
216227
log.Fatal(err)
217228
}
218229
}
230+
219231
func (c *DBClient) InsertRakeesMetrics(metrics model.RakeesMetrics) {
220232
var (
221233
tx, _ = c.conn.Begin()
222234
stmt, _ = tx.Prepare(string(InsertRakees))
223235
)
224236
defer stmt.Close()
237+
238+
currentTime := time.Now().UTC()
239+
225240
if _, err := stmt.Exec(
226241
metrics.ClusterName,
227242
metrics.Name,
228243
metrics.Create,
229244
metrics.Delete,
230245
metrics.List,
231246
metrics.Update,
247+
currentTime,
232248
); err != nil {
233249
log.Fatal(err)
234250
}
235251
if err := tx.Commit(); err != nil {
236252
log.Fatal(err)
237253
}
238254
}
255+
239256
func (c *DBClient) InsertKetallEvent(metrics model.Resource) {
240257
var (
241258
tx, _ = c.conn.Begin()
242259
stmt, _ = tx.Prepare(string(InsertKetall))
243260
)
244261
defer stmt.Close()
262+
263+
currentTime := time.Now().UTC()
264+
245265
if _, err := stmt.Exec(
246266
metrics.ClusterName,
247267
metrics.Namespace,
248268
metrics.Kind,
249269
metrics.Resource,
250270
metrics.Age,
271+
currentTime,
251272
); err != nil {
252273
log.Fatal(err)
253274
}
254275
if err := tx.Commit(); err != nil {
255276
log.Fatal(err)
256277
}
257278
}
279+
258280
func (c *DBClient) InsertOutdatedEvent(metrics model.CheckResultfinal) {
259281
var (
260282
tx, _ = c.conn.Begin()
261283
stmt, _ = tx.Prepare(string(InsertOutdated))
262284
)
263285
defer stmt.Close()
286+
287+
currentTime := time.Now().UTC()
288+
264289
if _, err := stmt.Exec(
265290
metrics.ClusterName,
266291
metrics.Namespace,
@@ -269,13 +294,15 @@ func (c *DBClient) InsertOutdatedEvent(metrics model.CheckResultfinal) {
269294
metrics.Current,
270295
metrics.LatestVersion,
271296
metrics.VersionsBehind,
297+
currentTime,
272298
); err != nil {
273299
log.Fatal(err)
274300
}
275301
if err := tx.Commit(); err != nil {
276302
log.Fatal(err)
277303
}
278304
}
305+
279306
func (c *DBClient) InsertDeprecatedAPI(deprecatedAPI model.DeprecatedAPI) {
280307
var (
281308
tx, _ = c.conn.Begin()
@@ -288,6 +315,8 @@ func (c *DBClient) InsertDeprecatedAPI(deprecatedAPI model.DeprecatedAPI) {
288315
deprecated = 1
289316
}
290317

318+
currentTime := time.Now().UTC()
319+
291320
for _, item := range deprecatedAPI.Items {
292321
if _, err := stmt.Exec(
293322
deprecatedAPI.ClusterName,
@@ -296,6 +325,7 @@ func (c *DBClient) InsertDeprecatedAPI(deprecatedAPI model.DeprecatedAPI) {
296325
deprecatedAPI.Kind,
297326
deprecated,
298327
item.Scope,
328+
currentTime,
299329
); err != nil {
300330
log.Fatal(err)
301331
}
@@ -305,6 +335,7 @@ func (c *DBClient) InsertDeprecatedAPI(deprecatedAPI model.DeprecatedAPI) {
305335
log.Fatal(err)
306336
}
307337
}
338+
308339
func (c *DBClient) InsertDeletedAPI(deletedAPI model.DeletedAPI) {
309340
var (
310341
tx, _ = c.conn.Begin()
@@ -316,6 +347,8 @@ func (c *DBClient) InsertDeletedAPI(deletedAPI model.DeletedAPI) {
316347
deleted = 1
317348
}
318349

350+
currentTime := time.Now().UTC()
351+
319352
for _, item := range deletedAPI.Items {
320353
if _, err := stmt.Exec(
321354
deletedAPI.ClusterName,
@@ -326,6 +359,7 @@ func (c *DBClient) InsertDeletedAPI(deletedAPI model.DeletedAPI) {
326359
deletedAPI.Name,
327360
deleted,
328361
item.Scope,
362+
currentTime,
329363
); err != nil {
330364
log.Fatal(err)
331365
}
@@ -335,6 +369,7 @@ func (c *DBClient) InsertDeletedAPI(deletedAPI model.DeletedAPI) {
335369
log.Fatal(err)
336370
}
337371
}
372+
338373
func (c *DBClient) InsertKubvizEvent(metrics model.Metrics) {
339374
var (
340375
tx, _ = c.conn.Begin()
@@ -403,11 +438,15 @@ func (c *DBClient) InsertKubeScoreMetrics(metrics model.KubeScoreRecommendations
403438
stmt, _ = tx.Prepare(InsertKubeScore)
404439
)
405440
defer stmt.Close()
441+
442+
currentTime := time.Now().UTC()
443+
406444
if _, err := stmt.Exec(
407445
metrics.ID,
408446
metrics.Namespace,
409447
metrics.ClusterName,
410448
metrics.Recommendations,
449+
currentTime,
411450
); err != nil {
412451
log.Fatal(err)
413452
}
@@ -449,11 +488,16 @@ func (c *DBClient) InsertTrivyMetrics(metrics model.Trivy) {
449488
}
450489
stmt.Close()
451490
}
491+
452492
for _, misconfiguration := range result.Misconfigurations {
453493
var (
454494
tx, _ = c.conn.Begin()
455495
stmt, _ = tx.Prepare(InsertTrivyMisconfig)
456496
)
497+
defer stmt.Close()
498+
499+
currentTime := time.Now().UTC()
500+
457501
if _, err := stmt.Exec(
458502
metrics.ID,
459503
metrics.ClusterName,
@@ -470,13 +514,13 @@ func (c *DBClient) InsertTrivyMetrics(metrics model.Trivy) {
470514
misconfiguration.Resolution,
471515
misconfiguration.Severity,
472516
string(misconfiguration.Status),
517+
currentTime,
473518
); err != nil {
474519
log.Fatal(err)
475520
}
476521
if err := tx.Commit(); err != nil {
477522
log.Fatal(err)
478523
}
479-
stmt.Close()
480524
}
481525
}
482526
}
@@ -674,13 +718,17 @@ func (c *DBClient) InsertContainerEventDockerHub(build model.DockerHubBuild) {
674718
stmt, _ = tx.Prepare(string(InsertDockerHubBuild))
675719
)
676720
defer stmt.Close()
721+
722+
currentTime := time.Now().UTC()
723+
677724
if _, err := stmt.Exec(
678725
build.PushedBy,
679726
build.ImageTag,
680727
build.RepositoryName,
681728
build.DateCreated,
682729
build.Owner,
683730
build.Event,
731+
currentTime,
684732
); err != nil {
685733
log.Fatal(err)
686734
}
@@ -737,14 +785,17 @@ func (c *DBClient) InsertGitCommon(metrics model.GitCommonAttribute, statement d
737785
return err
738786
}
739787
defer stmt.Close()
788+
789+
currentTime := time.Now().UTC()
790+
740791
if _, err := stmt.Exec(
741792
metrics.Author,
742793
metrics.GitProvider,
743794
metrics.CommitID,
744795
metrics.CommitUrl,
745796
metrics.EventType,
746797
metrics.RepoName,
747-
metrics.TimeStamp,
798+
currentTime,
748799
metrics.Event,
749800
); err != nil {
750801
return err

0 commit comments

Comments
 (0)