Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in
Toggle navigation
Menu
Open sidebar
小 白蛋
SigNoz
Commits
b1aeba8f
Commit
b1aeba8f
authored
3 years ago
by
makeavish
Browse files
Options
Download
Email Patches
Plain Diff
chore: add archive support
parent
5262508e
Changes
3
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
pkg/query-service/app/clickhouseReader/reader.go
+30
-4
pkg/query-service/app/clickhouseReader/reader.go
pkg/query-service/app/dashboards/model.go
+1
-0
pkg/query-service/app/dashboards/model.go
pkg/query-service/model/response.go
+2
-1
pkg/query-service/model/response.go
with
33 additions
and
5 deletions
+33
-5
pkg/query-service/app/clickhouseReader/reader.go
+
30
-
4
View file @
b1aeba8f
...
...
@@ -2387,13 +2387,16 @@ func (r *ClickHouseReader) SetTTL(ctx context.Context,
func
(
r
*
ClickHouseReader
)
checkTTLStatusItem
(
ctx
context
.
Context
,
tableName
string
)
(
model
.
TTLStatusItem
,
error
)
{
statusItem
:=
[]
model
.
TTLStatusItem
{}
query
:=
fmt
.
Sprintf
(
"SELECT id, status FROM ttl_status WHERE table_name = '%s' ORDER BY created_at DESC"
,
tableName
)
query
:=
fmt
.
Sprintf
(
"SELECT id, status
, archived
FROM ttl_status WHERE table_name = '%s' ORDER BY created_at DESC"
,
tableName
)
err
:=
r
.
localDB
.
Select
(
&
statusItem
,
query
)
zap
.
S
()
.
Info
(
query
)
if
err
!=
nil
||
len
(
statusItem
)
==
0
{
if
len
(
statusItem
)
==
0
{
return
model
.
TTLStatusItem
{},
nil
}
if
err
!=
nil
{
zap
.
S
()
.
Debug
(
"Error in processing sql query: "
,
err
)
return
model
.
TTLStatusItem
{},
err
}
...
...
@@ -2405,6 +2408,10 @@ func (r *ClickHouseReader) setTTLQueryStatus(ctx context.Context, tableNameArray
status
:=
constants
.
StatusSuccess
for
_
,
tableName
:=
range
tableNameArray
{
statusItem
,
err
:=
r
.
checkTTLStatusItem
(
ctx
,
tableName
)
emptyStatusStruct
:=
model
.
TTLStatusItem
{}
if
statusItem
==
emptyStatusStruct
||
statusItem
.
Archived
{
return
""
,
nil
}
if
err
!=
nil
{
return
""
,
&
model
.
ApiError
{
Typ
:
model
.
ErrorExec
,
Err
:
fmt
.
Errorf
(
"Error in processing ttl_status check sql query"
)}
}
...
...
@@ -2419,6 +2426,20 @@ func (r *ClickHouseReader) setTTLQueryStatus(ctx context.Context, tableNameArray
if
failFlag
{
status
=
constants
.
StatusFailed
}
if
status
==
constants
.
StatusSuccess
{
for
_
,
tableName
:=
range
tableNameArray
{
statusItem
,
err
:=
r
.
checkTTLStatusItem
(
ctx
,
tableName
)
if
err
!=
nil
{
return
""
,
&
model
.
ApiError
{
Typ
:
model
.
ErrorExec
,
Err
:
fmt
.
Errorf
(
"Error in processing ttl_status check sql query"
)}
}
_
,
dbErr
:=
r
.
localDB
.
Exec
(
"UPDATE ttl_status SET updated_at = ?, archived = ? WHERE id = ?"
,
time
.
Now
(),
true
,
statusItem
.
Id
)
if
dbErr
!=
nil
{
zap
.
S
()
.
Debug
(
"Error in processing ttl_status update sql query: "
,
dbErr
)
return
""
,
&
model
.
ApiError
{
Typ
:
model
.
ErrorExec
,
Err
:
fmt
.
Errorf
(
"Error in processing ttl_status update sql query"
)}
}
}
}
return
status
,
nil
}
...
...
@@ -2585,6 +2606,8 @@ func (r *ClickHouseReader) GetTTL(ctx context.Context, ttlParams *model.GetTTLPa
}
status
:=
""
//status of TTL queries
tableNameArray
:=
[]
string
{
signozTraceDBName
+
"."
+
signozTraceTableName
,
signozTraceDBName
+
"."
+
signozDurationMVTable
,
signozTraceDBName
+
"."
+
signozSpansTable
,
signozTraceDBName
+
"."
+
signozErrorIndexTable
}
status
,
err
:=
r
.
setTTLQueryStatus
(
ctx
,
tableNameArray
)
if
err
!=
nil
{
...
...
@@ -2595,12 +2618,15 @@ func (r *ClickHouseReader) GetTTL(ctx context.Context, ttlParams *model.GetTTLPa
return
nil
,
err
}
if
status
==
constants
.
StatusSuccess
{
if
status
==
constants
.
StatusSuccess
||
status
==
""
{
tableNameArray
=
[]
string
{
signozMetricDBName
+
"."
+
signozSampleName
}
status
,
err
=
r
.
setTTLQueryStatus
(
ctx
,
tableNameArray
)
status
Metrics
,
err
:
=
r
.
setTTLQueryStatus
(
ctx
,
tableNameArray
)
if
err
!=
nil
{
return
nil
,
err
}
if
statusMetrics
==
constants
.
StatusSuccess
{
status
=
statusMetrics
}
}
db2
,
err
:=
getMetricsTTL
()
if
err
!=
nil
{
...
...
This diff is collapsed.
Click to expand it.
pkg/query-service/app/dashboards/model.go
+
1
-
0
View file @
b1aeba8f
...
...
@@ -72,6 +72,7 @@ func InitDB(dataSourceName string) (*sqlx.DB, error) {
updated_at datetime NOT NULL,
table_name TEXT NOT NULL,
ttl INTEGER DEFAULT 0,
archived BOOL DEFAULT false,
status TEXT NOT NULL
);`
...
...
This diff is collapsed.
Click to expand it.
pkg/query-service/model/response.go
+
2
-
1
View file @
b1aeba8f
...
...
@@ -55,6 +55,7 @@ type TTLStatusItem struct {
TableName
string
`json:"table_name" db:"table_name"`
TTL
int
`json:"ttl" db:"ttl"`
Status
string
`json:"status" db:"status"`
Archived
bool
`json:"archived" db:"archived"`
}
type
ChannelItem
struct
{
...
...
@@ -273,7 +274,7 @@ type GetTTLResponseItem struct {
MetricsMoveTime
int
`json:"metrics_move_ttl_duration_hrs,omitempty"`
TracesTime
int
`json:"traces_ttl_duration_hrs,omitempty"`
TracesMoveTime
int
`json:"traces_move_ttl_duration_hrs,omitempty"`
Status
string
`json:"status
,omitempty
"`
Status
string
`json:"status"`
}
type
DBResponseServiceName
struct
{
...
...
This diff is collapsed.
Click to expand it.
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment