diff --git a/library.go b/library.go index 89376c40..f3d65022 100644 --- a/library.go +++ b/library.go @@ -1,5 +1,5 @@ package go_library func Version() string { - return "1.0.67" + return "1.0.68" } diff --git a/utils/gojobs/client.go b/utils/gojobs/client.go index 2679a254..925d1ac6 100644 --- a/utils/gojobs/client.go +++ b/utils/gojobs/client.go @@ -43,8 +43,6 @@ type Client struct { systemOutsideIp string // 外网ip goVersion string // go版本 sdkVersion string // sdk版本 - mongoVersion string // mongo版本 - mongoSdkVersion string // mongo sdk版本 redisVersion string // redis版本 redisSdkVersion string // redis sdk版本 logVersion string // log版本 @@ -57,10 +55,6 @@ type Client struct { cornKeyPrefix string // 任务Key前缀 xxx_cron cornKeyCustom string // 任务Key自定义 } - mongoConfig struct { - stats bool // 状态 - databaseName string // 库名 - } } // NewClient 创建实例 @@ -109,22 +103,5 @@ func NewClient(config *ClientConfig) (*Client, error) { return nil, gormClientFunNoConfig } - // 配置非关系数据库 - mongoClient, databaseName := config.MongoClientFun() - if mongoClient != nil && mongoClient.GetDb() != nil { - c.mongoClient = mongoClient - - if databaseName == "" { - return nil, mongoClientFunNoConfig - } else { - c.mongoConfig.databaseName = databaseName - } - - TaskLog{}.createCollection(ctx, c.zapLog, c.mongoClient, c.mongoConfig.databaseName) - TaskLog{}.createIndexes(ctx, c.zapLog, c.mongoClient, c.mongoConfig.databaseName) - - c.mongoConfig.stats = true - } - return c, nil } diff --git a/utils/gojobs/cofing.go b/utils/gojobs/cofing.go index abf1cc1a..4b405848 100644 --- a/utils/gojobs/cofing.go +++ b/utils/gojobs/cofing.go @@ -7,7 +7,6 @@ import ( "github.com/go-redis/redis/v9" "github.com/shirou/gopsutil/cpu" "github.com/shirou/gopsutil/host" - "go.mongodb.org/mongo-driver/version" "log" "runtime" ) @@ -80,8 +79,6 @@ func (c *Client) setConfig(ctx context.Context) { c.config.sdkVersion = go_library.Version() c.config.goVersion = runtime.Version() - c.config.mongoSdkVersion = version.Driver - c.config.redisSdkVersion = redis.Version() c.config.logVersion = go_library.Version() diff --git a/utils/gojobs/model.go b/utils/gojobs/model.go index 0f93297a..dd549dfd 100644 --- a/utils/gojobs/model.go +++ b/utils/gojobs/model.go @@ -36,9 +36,6 @@ func (c *Client) GormTaskLogDelete(ctx context.Context, hour int64) error { func (c *Client) TaskLogRecord(ctx context.Context, task jobs_gorm_model.Task, taskResultCode int, taskResultDesc string) { runId := gotrace_id.GetTraceIdContext(ctx) c.GormTaskLogRecord(ctx, task, runId, taskResultCode, taskResultDesc) - if c.mongoConfig.stats { - c.MongoTaskLogRecord(ctx, task, runId, taskResultCode, taskResultDesc) - } } // GormTaskLogRecord 记录 diff --git a/utils/gojobs/model_task_log.go b/utils/gojobs/model_task_log.go deleted file mode 100644 index d3c217b5..00000000 --- a/utils/gojobs/model_task_log.go +++ /dev/null @@ -1,118 +0,0 @@ -package gojobs - -import ( - "context" - "github.com/dtapps/go-library/utils/dorm" - "github.com/dtapps/go-library/utils/gojobs/jobs_gorm_model" - "github.com/dtapps/go-library/utils/golog" - "github.com/dtapps/go-library/utils/gotime" - "go.mongodb.org/mongo-driver/bson" - "go.mongodb.org/mongo-driver/bson/primitive" - "go.mongodb.org/mongo-driver/mongo" - "go.mongodb.org/mongo-driver/mongo/options" -) - -// TaskLog 任务日志模型 -type TaskLog struct { - LogId primitive.ObjectID `json:"log_id,omitempty" bson:"_id,omitempty"` //【记录】编号 - LogTime primitive.DateTime `json:"log_time,omitempty" bson:"log_time"` //【记录】时间 - Task struct { - Id uint `json:"id" bson:"id"` //【任务】编号 - RunId string `json:"run_id" bson:"run_id"` //【任务】执行编号 - ResultCode int `json:"result_code" bson:"result_code"` //【任务】执行状态码 - ResultDesc string `json:"result_desc" bson:"result_desc"` //【任务】执行结果 - ResultTime string `json:"result_time" bson:"result_time"` //【任务】执行时间 - } `json:"task,omitempty" bson:"task,omitempty"` //【任务】信息 - System struct { - Hostname string `json:"hostname" bson:"hostname"` //【系统】主机名 - Os string `json:"os" bson:"os"` //【系统】系统类型 - Version string `json:"version" bson:"version"` //【系统】系统版本 - Kernel string `json:"kernel" bson:"kernel"` //【系统】系统内核 - KernelVersion string `json:"kernel_version" bson:"kernel_version"` //【系统】系统内核版本 - BootTime string `json:"boot_time" bson:"boot_time"` //【系统】系统开机时间 - CpuCores int `json:"cpu_cores,omitempty" bson:"cpu_cores,omitempty"` //【系统】CPU核数 - CpuModelName string `json:"cpu_model_name,omitempty" bson:"cpu_model_name,omitempty"` //【系统】CPU型号名称 - CpuMhz float64 `json:"cpu_mhz,omitempty" bson:"cpu_mhz,omitempty"` //【系统】CPU兆赫 - InsideIp string `json:"inside_ip" bson:"inside_ip"` //【系统】内网ip - OutsideIp string `json:"outside_ip" bson:"outside_ip"` //【系统】外网ip - GoVersion string `json:"go_version,omitempty" bson:"go_version,omitempty"` //【系统】go版本 - SdkVersion string `json:"sdk_version,omitempty" bson:"sdk_version,omitempty"` //【系统】sdk版本 - MongoVersion string `json:"mongo_version,omitempty" bson:"mongo_version,omitempty"` //【系统】mongo版本 - MongoSdkVersion string `json:"mongo_sdk_version,omitempty" bson:"mongo_sdk_version,omitempty"` //【系统】mongo sdk版本 - RedisVersion string `json:"redis_version,omitempty" bson:"redis_version,omitempty"` //【系统】redis版本 - RedisSdkVersion string `json:"redis_sdk_version,omitempty" bson:"redis_sdk_version,omitempty"` //【系统】redis sdk版本 - LogVersion string `json:"log_version,omitempty" bson:"log_version,omitempty"` //【系统】log版本 - } `json:"system,omitempty" bson:"system,omitempty"` //【系统】信息 -} - -func (TaskLog) CollectionName() string { - return "task_log" -} - -// 创建时间序列集合 -func (TaskLog) createCollection(ctx context.Context, zapLog *golog.ZapLog, db *dorm.MongoClient, databaseName string) { - err := db.Database(databaseName).CreateCollection(ctx, TaskLog{}.CollectionName(), options.CreateCollection().SetTimeSeriesOptions(options.TimeSeries().SetTimeField("log_time"))) - if err != nil { - zapLog.WithTraceId(ctx).Sugar().Errorf("创建时间序列集合:%s", err) - } -} - -// 创建索引 -func (TaskLog) createIndexes(ctx context.Context, zapLog *golog.ZapLog, db *dorm.MongoClient, databaseName string) { - _, err := db.Database(databaseName).Collection(TaskLog{}.CollectionName()).CreateManyIndexes(ctx, []mongo.IndexModel{{ - Keys: bson.D{{ - Key: "log_time", - Value: -1, - }}, - }}) - if err != nil { - zapLog.WithTraceId(ctx).Sugar().Errorf("创建索引:%s", err) - } -} - -// MongoTaskLogRecord 记录 -func (c *Client) MongoTaskLogRecord(ctx context.Context, task jobs_gorm_model.Task, runId string, taskResultCode int, taskResultDesc string) { - - taskLog := TaskLog{ - LogId: primitive.NewObjectID(), - LogTime: primitive.NewDateTimeFromTime(gotime.Current().Time), - } - - taskLog.Task.Id = task.Id - taskLog.Task.RunId = runId - taskLog.Task.ResultCode = taskResultCode - taskLog.Task.ResultDesc = taskResultDesc - taskLog.Task.ResultTime = gotime.Current().Format() - - taskLog.System.Hostname = c.config.systemHostname //【系统】主机名 - taskLog.System.Os = c.config.systemOs //【系统】系统类型 - taskLog.System.Version = c.config.systemVersion //【系统】系统版本 - taskLog.System.Kernel = c.config.systemKernel //【系统】系统内核 - taskLog.System.KernelVersion = c.config.systemKernelVersion //【系统】系统内核版本 - taskLog.System.BootTime = gotime.SetCurrent(gotime.SetCurrentUnix(int64(c.config.systemBootTime)).Time).Format() //【系统】系统开机时间 - taskLog.System.CpuCores = c.config.cpuCores //【系统】CPU核数 - taskLog.System.CpuModelName = c.config.cpuModelName //【程序】CPU型号名称 - taskLog.System.CpuMhz = c.config.cpuMhz //【系统】CPU兆赫 - taskLog.System.InsideIp = c.config.systemInsideIp //【系统】内网ip - taskLog.System.OutsideIp = c.config.systemOutsideIp //【系统】外网ip - taskLog.System.GoVersion = c.config.goVersion //【系统】Go版本 - taskLog.System.SdkVersion = c.config.sdkVersion //【系统】Sdk版本 - taskLog.System.MongoVersion = c.config.mongoVersion //【系统】mongo版本 - taskLog.System.MongoSdkVersion = c.config.mongoSdkVersion //【系统】mongo sdk版本 - taskLog.System.RedisVersion = c.config.redisVersion //【系统】redis版本 - taskLog.System.RedisSdkVersion = c.config.redisSdkVersion //【系统】redis sdk版本 - taskLog.System.LogVersion = c.config.logVersion //【系统】log版本 - - _, err := c.mongoClient.Database(c.mongoConfig.databaseName).Collection(TaskLog{}.CollectionName()).InsertOne(ctx, taskLog) - if err != nil { - c.zapLog.WithTraceId(ctx).Sugar().Errorf("记录失败:%s", err) - c.zapLog.WithTraceId(ctx).Sugar().Errorf("记录数据:%+v", taskLog) - } - -} - -// MongoTaskLogDelete 删除 -func (c *Client) MongoTaskLogDelete(ctx context.Context, hour int64) (*mongo.DeleteResult, error) { - filter := bson.D{{"log_time", bson.D{{"$lt", primitive.NewDateTimeFromTime(gotime.Current().BeforeHour(hour).Time)}}}} - return c.mongoClient.Database(c.mongoConfig.databaseName).Collection(TaskLog{}.CollectionName()).DeleteMany(ctx, filter) -} diff --git a/utils/gojobs/run.go b/utils/gojobs/run.go index 64fe0c68..280099d0 100644 --- a/utils/gojobs/run.go +++ b/utils/gojobs/run.go @@ -17,9 +17,6 @@ func (c *Client) Run(ctx context.Context, task jobs_gorm_model.Task, taskResultC } c.GormTaskLogRecord(ctx, task, runId, taskResultCode, taskResultDesc) - if c.mongoConfig.stats { - c.MongoTaskLogRecord(ctx, task, runId, taskResultCode, taskResultDesc) - } switch taskResultCode { case 0: