@@ -21,6 +21,7 @@ package logging
|
||||
import (
|
||||
"github.com/emicklei/go-restful"
|
||||
"github.com/golang/glog"
|
||||
"kubesphere.io/kubesphere/pkg/errors"
|
||||
"kubesphere.io/kubesphere/pkg/models/log"
|
||||
es "kubesphere.io/kubesphere/pkg/simple/client/elasticsearch"
|
||||
fb "kubesphere.io/kubesphere/pkg/simple/client/fluentbit"
|
||||
@@ -32,7 +33,7 @@ func LoggingQueryCluster(request *restful.Request, response *restful.Response) {
|
||||
res := logQuery(log.QueryLevelCluster, request)
|
||||
|
||||
if res.Status != http.StatusOK {
|
||||
response.WriteHeaderAndEntity(res.Status, res.Error)
|
||||
response.WriteHeaderAndEntity(res.Status, errors.New(res.Error))
|
||||
return
|
||||
}
|
||||
|
||||
@@ -43,7 +44,7 @@ func LoggingQueryWorkspace(request *restful.Request, response *restful.Response)
|
||||
res := logQuery(log.QueryLevelWorkspace, request)
|
||||
|
||||
if res.Status != http.StatusOK {
|
||||
response.WriteHeaderAndEntity(res.Status, res.Error)
|
||||
response.WriteHeaderAndEntity(res.Status, errors.New(res.Error))
|
||||
return
|
||||
}
|
||||
|
||||
@@ -54,7 +55,7 @@ func LoggingQueryNamespace(request *restful.Request, response *restful.Response)
|
||||
res := logQuery(log.QueryLevelNamespace, request)
|
||||
|
||||
if res.Status != http.StatusOK {
|
||||
response.WriteHeaderAndEntity(res.Status, res.Error)
|
||||
response.WriteHeaderAndEntity(res.Status, errors.New(res.Error))
|
||||
return
|
||||
}
|
||||
|
||||
@@ -65,7 +66,7 @@ func LoggingQueryWorkload(request *restful.Request, response *restful.Response)
|
||||
res := logQuery(log.QueryLevelWorkload, request)
|
||||
|
||||
if res.Status != http.StatusOK {
|
||||
response.WriteHeaderAndEntity(res.Status, res.Error)
|
||||
response.WriteHeaderAndEntity(res.Status, errors.New(res.Error))
|
||||
return
|
||||
}
|
||||
|
||||
@@ -75,7 +76,7 @@ func LoggingQueryWorkload(request *restful.Request, response *restful.Response)
|
||||
func LoggingQueryPod(request *restful.Request, response *restful.Response) {
|
||||
res := logQuery(log.QueryLevelPod, request)
|
||||
if res.Status != http.StatusOK {
|
||||
response.WriteHeaderAndEntity(res.Status, res.Error)
|
||||
response.WriteHeaderAndEntity(res.Status, errors.New(res.Error))
|
||||
return
|
||||
}
|
||||
response.WriteAsJson(res)
|
||||
@@ -84,7 +85,7 @@ func LoggingQueryPod(request *restful.Request, response *restful.Response) {
|
||||
func LoggingQueryContainer(request *restful.Request, response *restful.Response) {
|
||||
res := logQuery(log.QueryLevelContainer, request)
|
||||
if res.Status != http.StatusOK {
|
||||
response.WriteHeaderAndEntity(res.Status, res.Error)
|
||||
response.WriteHeaderAndEntity(res.Status, errors.New(res.Error))
|
||||
return
|
||||
}
|
||||
response.WriteAsJson(res)
|
||||
@@ -114,7 +115,7 @@ func LoggingUpdateFluentbitFilters(request *restful.Request, response *restful.R
|
||||
func LoggingQueryFluentbitOutputs(request *restful.Request, response *restful.Response) {
|
||||
res := log.FluentbitOutputsQuery()
|
||||
if res.Status != http.StatusOK {
|
||||
response.WriteHeaderAndEntity(res.Status, res.Error)
|
||||
response.WriteHeaderAndEntity(res.Status, errors.New(res.Error))
|
||||
return
|
||||
}
|
||||
response.WriteAsJson(res)
|
||||
@@ -128,13 +129,13 @@ func LoggingInsertFluentbitOutput(request *restful.Request, response *restful.Re
|
||||
err := request.ReadEntity(&output)
|
||||
if err != nil {
|
||||
glog.Errorln(err)
|
||||
res = &log.FluentbitOutputsResult{Status: http.StatusBadRequest}
|
||||
} else {
|
||||
res = log.FluentbitOutputInsert(output)
|
||||
response.WriteHeaderAndEntity(http.StatusBadRequest, errors.Wrap(err))
|
||||
return
|
||||
}
|
||||
|
||||
res = log.FluentbitOutputInsert(output)
|
||||
if res.Status != http.StatusOK {
|
||||
response.WriteHeaderAndEntity(res.Status, res.Error)
|
||||
response.WriteHeaderAndEntity(res.Status, errors.New(res.Error))
|
||||
return
|
||||
}
|
||||
|
||||
@@ -150,15 +151,14 @@ func LoggingUpdateFluentbitOutput(request *restful.Request, response *restful.Re
|
||||
err := request.ReadEntity(&output)
|
||||
if err != nil {
|
||||
glog.Errorln(err)
|
||||
res := &log.FluentbitOutputsResult{Status: http.StatusBadRequest}
|
||||
response.WriteAsJson(res)
|
||||
response.WriteHeaderAndEntity(http.StatusBadRequest, errors.Wrap(err))
|
||||
return
|
||||
}
|
||||
|
||||
res := log.FluentbitOutputUpdate(output, id)
|
||||
|
||||
if res.Status != http.StatusOK {
|
||||
response.WriteHeaderAndEntity(res.Status, res.Error)
|
||||
response.WriteHeaderAndEntity(res.Status, errors.New(res.Error))
|
||||
return
|
||||
}
|
||||
|
||||
@@ -173,7 +173,7 @@ func LoggingDeleteFluentbitOutput(request *restful.Request, response *restful.Re
|
||||
res = log.FluentbitOutputDelete(id)
|
||||
|
||||
if res.Status != http.StatusOK {
|
||||
response.WriteHeaderAndEntity(res.Status, res.Error)
|
||||
response.WriteHeaderAndEntity(res.Status, errors.New(res.Error))
|
||||
return
|
||||
}
|
||||
|
||||
|
||||
@@ -335,7 +335,7 @@ func LogQuery(req *restful.Request, resp *restful.Response) {
|
||||
|
||||
clusterRules, err := iam.GetUserClusterRules(username)
|
||||
if err != nil {
|
||||
resp.WriteError(http.StatusInternalServerError, err)
|
||||
resp.WriteHeaderAndEntity(http.StatusInternalServerError, errors.Wrap(err))
|
||||
glog.Errorln(err)
|
||||
return
|
||||
}
|
||||
@@ -348,8 +348,9 @@ func LogQuery(req *restful.Request, resp *restful.Response) {
|
||||
namespaces := make([]string, 0)
|
||||
roles, err := iam.GetUserRoles("", username)
|
||||
if err != nil {
|
||||
resp.WriteError(http.StatusInternalServerError, err)
|
||||
resp.WriteHeaderAndEntity(http.StatusInternalServerError, errors.Wrap(err))
|
||||
glog.Errorln(err)
|
||||
return
|
||||
}
|
||||
for _, role := range roles {
|
||||
if !sliceutil.HasString(namespaces, role.Namespace) && iam.RulesMatchesRequired(role.Rules, rbacv1.PolicyRule{Verbs: []string{"get"}, Resources: []string{"*"}, APIGroups: []string{"logging.kubesphere.io"}}) {
|
||||
|
||||
@@ -232,7 +232,7 @@ func FluentbitOutputsQuery() *FluentbitOutputsResult {
|
||||
|
||||
outputs, err := GetFluentbitOutputFromConfigMap()
|
||||
if err != nil {
|
||||
result.Status = http.StatusNotFound
|
||||
result.Status = http.StatusInternalServerError
|
||||
result.Error = err.Error()
|
||||
return &result
|
||||
}
|
||||
|
||||
@@ -557,7 +557,7 @@ func Query(param QueryParameters) *QueryResult {
|
||||
operation, query, err := createQueryRequest(param)
|
||||
if err != nil {
|
||||
queryResult = new(QueryResult)
|
||||
queryResult.Status = http.StatusNotFound
|
||||
queryResult.Status = http.StatusInternalServerError
|
||||
queryResult.Error = err.Error()
|
||||
return queryResult
|
||||
}
|
||||
@@ -565,7 +565,7 @@ func Query(param QueryParameters) *QueryResult {
|
||||
es := readESConfigs()
|
||||
if es == nil {
|
||||
queryResult = new(QueryResult)
|
||||
queryResult.Status = http.StatusNotFound
|
||||
queryResult.Status = http.StatusInternalServerError
|
||||
queryResult.Error = "Elasticsearch configurations not found. Please check if they are properly configured."
|
||||
return queryResult
|
||||
}
|
||||
@@ -576,7 +576,7 @@ func Query(param QueryParameters) *QueryResult {
|
||||
if err != nil {
|
||||
glog.Errorln(err)
|
||||
queryResult = new(QueryResult)
|
||||
queryResult.Status = http.StatusNotFound
|
||||
queryResult.Status = http.StatusInternalServerError
|
||||
queryResult.Error = err.Error()
|
||||
return queryResult
|
||||
}
|
||||
@@ -586,7 +586,7 @@ func Query(param QueryParameters) *QueryResult {
|
||||
if err != nil {
|
||||
glog.Errorln(err)
|
||||
queryResult = new(QueryResult)
|
||||
queryResult.Status = http.StatusNotFound
|
||||
queryResult.Status = http.StatusInternalServerError
|
||||
queryResult.Error = err.Error()
|
||||
return queryResult
|
||||
}
|
||||
@@ -596,7 +596,7 @@ func Query(param QueryParameters) *QueryResult {
|
||||
if err != nil {
|
||||
glog.Errorln(err)
|
||||
queryResult = new(QueryResult)
|
||||
queryResult.Status = http.StatusNotFound
|
||||
queryResult.Status = http.StatusInternalServerError
|
||||
queryResult.Error = err.Error()
|
||||
return queryResult
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user