mirror of
https://github.com/mattermost/mattermost.git
synced 2025-02-25 18:55:24 -06:00
[MM-57071] Use bool for license_is_trial in Support Packet (#26378)
This commit is contained in:
parent
b20f14111c
commit
1383d51436
@ -9,7 +9,6 @@ import (
|
|||||||
"os"
|
"os"
|
||||||
"runtime"
|
"runtime"
|
||||||
"runtime/pprof"
|
"runtime/pprof"
|
||||||
"strconv"
|
|
||||||
"strings"
|
"strings"
|
||||||
"time"
|
"time"
|
||||||
|
|
||||||
@ -74,7 +73,10 @@ func (a *App) generateSupportPacketYaml(c request.CTX) (*model.FileData, error)
|
|||||||
/* DB */
|
/* DB */
|
||||||
|
|
||||||
databaseType, databaseSchemaVersion := a.Srv().DatabaseTypeAndSchemaVersion()
|
databaseType, databaseSchemaVersion := a.Srv().DatabaseTypeAndSchemaVersion()
|
||||||
databaseVersion, _ := a.Srv().Store().GetDbVersion(false)
|
databaseVersion, err := a.Srv().Store().GetDbVersion(false)
|
||||||
|
if err != nil {
|
||||||
|
rErr = multierror.Append(errors.Wrap(err, "error while getting DB version"))
|
||||||
|
}
|
||||||
|
|
||||||
/* Cluster */
|
/* Cluster */
|
||||||
|
|
||||||
@ -87,7 +89,7 @@ func (a *App) generateSupportPacketYaml(c request.CTX) (*model.FileData, error)
|
|||||||
|
|
||||||
fileDriver := a.Srv().Platform().FileBackend().DriverName()
|
fileDriver := a.Srv().Platform().FileBackend().DriverName()
|
||||||
fileStatus := model.StatusOk
|
fileStatus := model.StatusOk
|
||||||
err := a.Srv().Platform().FileBackend().TestConnection()
|
err = a.Srv().Platform().FileBackend().TestConnection()
|
||||||
if err != nil {
|
if err != nil {
|
||||||
fileStatus = model.StatusFail + ": " + err.Error()
|
fileStatus = model.StatusFail + ": " + err.Error()
|
||||||
}
|
}
|
||||||
@ -110,22 +112,55 @@ func (a *App) generateSupportPacketYaml(c request.CTX) (*model.FileData, error)
|
|||||||
|
|
||||||
/* License */
|
/* License */
|
||||||
|
|
||||||
licenseTo := ""
|
var (
|
||||||
supportedUsers := 0
|
licenseTo string
|
||||||
var isTrial bool
|
supportedUsers int
|
||||||
|
isTrial bool
|
||||||
|
)
|
||||||
if license := a.Srv().License(); license != nil {
|
if license := a.Srv().License(); license != nil {
|
||||||
supportedUsers = *license.Features.Users
|
|
||||||
licenseTo = license.Customer.Company
|
licenseTo = license.Customer.Company
|
||||||
|
supportedUsers = *license.Features.Users
|
||||||
isTrial = license.IsTrial
|
isTrial = license.IsTrial
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Jobs */
|
/* Server stats */
|
||||||
|
|
||||||
uniqueUserCount, err := a.Srv().Store().User().Count(model.UserCountOptions{})
|
uniqueUserCount, err := a.Srv().Store().User().Count(model.UserCountOptions{})
|
||||||
if err != nil {
|
if err != nil {
|
||||||
rErr = multierror.Append(errors.Wrap(err, "error while getting user count"))
|
rErr = multierror.Append(errors.Wrap(err, "error while getting user count"))
|
||||||
}
|
}
|
||||||
|
|
||||||
|
var (
|
||||||
|
totalChannels int
|
||||||
|
totalPosts int
|
||||||
|
totalTeams int
|
||||||
|
websocketConnections int
|
||||||
|
masterDbConnections int
|
||||||
|
replicaDbConnections int
|
||||||
|
dailyActiveUsers int
|
||||||
|
monthlyActiveUsers int
|
||||||
|
inactiveUserCount int
|
||||||
|
)
|
||||||
|
analytics, appErr := a.GetAnalytics(c, "standard", "")
|
||||||
|
if appErr != nil {
|
||||||
|
rErr = multierror.Append(errors.Wrap(appErr, "error while getting analytics"))
|
||||||
|
}
|
||||||
|
if len(analytics) < 11 {
|
||||||
|
rErr = multierror.Append(errors.New("not enought analytics information found"))
|
||||||
|
} else {
|
||||||
|
totalChannels = int(analytics[0].Value) + int(analytics[1].Value)
|
||||||
|
totalPosts = int(analytics[2].Value)
|
||||||
|
totalTeams = int(analytics[4].Value)
|
||||||
|
websocketConnections = int(analytics[5].Value)
|
||||||
|
masterDbConnections = int(analytics[6].Value)
|
||||||
|
replicaDbConnections = int(analytics[7].Value)
|
||||||
|
dailyActiveUsers = int(analytics[8].Value)
|
||||||
|
monthlyActiveUsers = int(analytics[9].Value)
|
||||||
|
inactiveUserCount = int(analytics[10].Value)
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Jobs */
|
||||||
|
|
||||||
dataRetentionJobs, err := a.Srv().Store().Job().GetAllByTypePage(c, model.JobTypeDataRetention, 0, 2)
|
dataRetentionJobs, err := a.Srv().Store().Job().GetAllByTypePage(c, model.JobTypeDataRetention, 0, 2)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
rErr = multierror.Append(errors.Wrap(err, "error while getting data retention jobs"))
|
rErr = multierror.Append(errors.Wrap(err, "error while getting data retention jobs"))
|
||||||
@ -138,11 +173,11 @@ func (a *App) generateSupportPacketYaml(c request.CTX) (*model.FileData, error)
|
|||||||
if err != nil {
|
if err != nil {
|
||||||
rErr = multierror.Append(errors.Wrap(err, "error while getting ES post indexing jobs"))
|
rErr = multierror.Append(errors.Wrap(err, "error while getting ES post indexing jobs"))
|
||||||
}
|
}
|
||||||
elasticPostAggregationJobs, _ := a.Srv().Store().Job().GetAllByTypePage(c, model.JobTypeElasticsearchPostAggregation, 0, 2)
|
elasticPostAggregationJobs, err := a.Srv().Store().Job().GetAllByTypePage(c, model.JobTypeElasticsearchPostAggregation, 0, 2)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
rErr = multierror.Append(errors.Wrap(err, "error while getting ES post aggregation jobs"))
|
rErr = multierror.Append(errors.Wrap(err, "error while getting ES post aggregation jobs"))
|
||||||
}
|
}
|
||||||
blevePostIndexingJobs, _ := a.Srv().Store().Job().GetAllByTypePage(c, model.JobTypeBlevePostIndexing, 0, 2)
|
blevePostIndexingJobs, err := a.Srv().Store().Job().GetAllByTypePage(c, model.JobTypeBlevePostIndexing, 0, 2)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
rErr = multierror.Append(errors.Wrap(err, "error while getting bleve post indexing jobs"))
|
rErr = multierror.Append(errors.Wrap(err, "error while getting bleve post indexing jobs"))
|
||||||
}
|
}
|
||||||
@ -167,6 +202,9 @@ func (a *App) generateSupportPacketYaml(c request.CTX) (*model.FileData, error)
|
|||||||
DatabaseType: databaseType,
|
DatabaseType: databaseType,
|
||||||
DatabaseVersion: databaseVersion,
|
DatabaseVersion: databaseVersion,
|
||||||
DatabaseSchemaVersion: databaseSchemaVersion,
|
DatabaseSchemaVersion: databaseSchemaVersion,
|
||||||
|
WebsocketConnections: websocketConnections,
|
||||||
|
MasterDbConnections: masterDbConnections,
|
||||||
|
ReplicaDbConnections: replicaDbConnections,
|
||||||
|
|
||||||
/* Cluster */
|
/* Cluster */
|
||||||
ClusterID: clusterID,
|
ClusterID: clusterID,
|
||||||
@ -186,10 +224,16 @@ func (a *App) generateSupportPacketYaml(c request.CTX) (*model.FileData, error)
|
|||||||
/* License */
|
/* License */
|
||||||
LicenseTo: licenseTo,
|
LicenseTo: licenseTo,
|
||||||
LicenseSupportedUsers: supportedUsers,
|
LicenseSupportedUsers: supportedUsers,
|
||||||
LicenseIsTrial: strconv.FormatBool(isTrial),
|
LicenseIsTrial: isTrial,
|
||||||
|
|
||||||
/* Server stats */
|
/* Server stats */
|
||||||
ActiveUsers: int(uniqueUserCount),
|
ActiveUsers: int(uniqueUserCount),
|
||||||
|
DailyActiveUsers: dailyActiveUsers,
|
||||||
|
MonthlyActiveUsers: monthlyActiveUsers,
|
||||||
|
InactiveUserCount: inactiveUserCount,
|
||||||
|
TotalPosts: totalPosts,
|
||||||
|
TotalChannels: totalChannels,
|
||||||
|
TotalTeams: totalTeams,
|
||||||
|
|
||||||
/* Jobs */
|
/* Jobs */
|
||||||
DataRetentionJobs: dataRetentionJobs,
|
DataRetentionJobs: dataRetentionJobs,
|
||||||
@ -201,26 +245,6 @@ func (a *App) generateSupportPacketYaml(c request.CTX) (*model.FileData, error)
|
|||||||
MigrationJobs: migrationJobs,
|
MigrationJobs: migrationJobs,
|
||||||
}
|
}
|
||||||
|
|
||||||
/* Server stats */
|
|
||||||
|
|
||||||
analytics, appErr := a.GetAnalytics(c, "standard", "")
|
|
||||||
if appErr != nil {
|
|
||||||
rErr = multierror.Append(errors.Wrap(appErr, "error while getting analytics"))
|
|
||||||
}
|
|
||||||
if len(analytics) < 11 {
|
|
||||||
rErr = multierror.Append(errors.New("not enought analytics information found"))
|
|
||||||
} else {
|
|
||||||
supportPacket.TotalChannels = int(analytics[0].Value) + int(analytics[1].Value)
|
|
||||||
supportPacket.TotalPosts = int(analytics[2].Value)
|
|
||||||
supportPacket.TotalTeams = int(analytics[4].Value)
|
|
||||||
supportPacket.WebsocketConnections = int(analytics[5].Value)
|
|
||||||
supportPacket.MasterDbConnections = int(analytics[6].Value)
|
|
||||||
supportPacket.ReplicaDbConnections = int(analytics[7].Value)
|
|
||||||
supportPacket.DailyActiveUsers = int(analytics[8].Value)
|
|
||||||
supportPacket.MonthlyActiveUsers = int(analytics[9].Value)
|
|
||||||
supportPacket.InactiveUserCount = int(analytics[10].Value)
|
|
||||||
}
|
|
||||||
|
|
||||||
// Marshal to a Yaml File
|
// Marshal to a Yaml File
|
||||||
supportPacketYaml, err := yaml.Marshal(&supportPacket)
|
supportPacketYaml, err := yaml.Marshal(&supportPacket)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
|
@ -61,6 +61,7 @@ func TestGenerateSupportPacketYaml(t *testing.T) {
|
|||||||
|
|
||||||
assert.Equal(t, 3, packet.ActiveUsers) // from InitBasic.
|
assert.Equal(t, 3, packet.ActiveUsers) // from InitBasic.
|
||||||
assert.Equal(t, licenseUsers, packet.LicenseSupportedUsers)
|
assert.Equal(t, licenseUsers, packet.LicenseSupportedUsers)
|
||||||
|
assert.Equal(t, false, packet.LicenseIsTrial)
|
||||||
assert.Empty(t, packet.ClusterID)
|
assert.Empty(t, packet.ClusterID)
|
||||||
assert.Equal(t, "local", packet.FileDriver)
|
assert.Equal(t, "local", packet.FileDriver)
|
||||||
assert.Equal(t, "OK", packet.FileStatus)
|
assert.Equal(t, "OK", packet.FileStatus)
|
||||||
|
@ -84,7 +84,7 @@ type SupportPacket struct {
|
|||||||
ServerOS string `yaml:"server_os"`
|
ServerOS string `yaml:"server_os"`
|
||||||
ServerArchitecture string `yaml:"server_architecture"`
|
ServerArchitecture string `yaml:"server_architecture"`
|
||||||
ServerVersion string `yaml:"server_version"`
|
ServerVersion string `yaml:"server_version"`
|
||||||
BuildHash string `yaml:"build_hash,omitempty"`
|
BuildHash string `yaml:"build_hash"`
|
||||||
|
|
||||||
/* DB */
|
/* DB */
|
||||||
|
|
||||||
@ -117,8 +117,8 @@ type SupportPacket struct {
|
|||||||
/* License */
|
/* License */
|
||||||
|
|
||||||
LicenseTo string `yaml:"license_to"`
|
LicenseTo string `yaml:"license_to"`
|
||||||
LicenseSupportedUsers int `yaml:"license_supported_users,omitempty"`
|
LicenseSupportedUsers int `yaml:"license_supported_users"`
|
||||||
LicenseIsTrial string `yaml:"license_is_trial,omitempty"`
|
LicenseIsTrial bool `yaml:"license_is_trial,omitempty"`
|
||||||
|
|
||||||
/* Server stats */
|
/* Server stats */
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user