|
|
@@ -30,11 +30,15 @@ func RepoStatisticDaily(date string) { |
|
|
|
|
|
|
|
for _, repo := range repos { |
|
|
|
log.Info("start statistic: %s", repo.Name) |
|
|
|
var numDevMonths,numWikiViews,numContributor,numKeyContributor int64 |
|
|
|
repoGitStat, err := models.GetRepoKPIStats(repo) |
|
|
|
if err != nil { |
|
|
|
log.Error("GetRepoKPIStats failed: %s", repo.Name) |
|
|
|
log.Error("failed statistic: %s", repo.Name) |
|
|
|
continue |
|
|
|
} else { |
|
|
|
numDevMonths = repoGitStat.DevelopAge |
|
|
|
numKeyContributor = repoGitStat.KeyContributors |
|
|
|
numWikiViews = repoGitStat.WikiPages |
|
|
|
numContributor = repoGitStat.Contributors |
|
|
|
} |
|
|
|
|
|
|
|
var issueFixedRate float32 |
|
|
@@ -42,32 +46,29 @@ func RepoStatisticDaily(date string) { |
|
|
|
issueFixedRate = float32(repo.NumClosedIssues) / float32(repo.NumIssues) |
|
|
|
} |
|
|
|
|
|
|
|
numVersions, err := models.GetReleaseCountByRepoID(repo.ID, models.FindReleasesOptions{}) |
|
|
|
var numVersions int64 |
|
|
|
numVersions, err = models.GetReleaseCountByRepoID(repo.ID, models.FindReleasesOptions{}) |
|
|
|
if err != nil { |
|
|
|
log.Error("GetReleaseCountByRepoID failed: %s", repo.Name) |
|
|
|
log.Error("failed statistic: %s", repo.Name) |
|
|
|
continue |
|
|
|
log.Error("GetReleaseCountByRepoID failed(%s): %v", repo.Name, err) |
|
|
|
} |
|
|
|
|
|
|
|
datasetSize, err := getDatasetSize(repo) |
|
|
|
var datasetSize int64 |
|
|
|
datasetSize, err = getDatasetSize(repo) |
|
|
|
if err != nil { |
|
|
|
log.Error("getDatasetSize failed: %s", repo.Name) |
|
|
|
log.Error("failed statistic: %s", repo.Name) |
|
|
|
continue |
|
|
|
log.Error("getDatasetSize failed(%s): %v", repo.Name, err) |
|
|
|
} |
|
|
|
|
|
|
|
numComments, err := models.GetCommentCountByRepoID(repo.ID) |
|
|
|
var numComments int64 |
|
|
|
numComments, err = models.GetCommentCountByRepoID(repo.ID) |
|
|
|
if err != nil { |
|
|
|
log.Error("GetCommentCountByRepoID failed: %s", repo.Name) |
|
|
|
log.Error("failed statistic: %s", repo.Name) |
|
|
|
continue |
|
|
|
log.Error("GetCommentCountByRepoID failed(%s): %v", repo.Name, err) |
|
|
|
} |
|
|
|
|
|
|
|
beginTime, endTime := getStatTime(date) |
|
|
|
numVisits, err := repository.AppointProjectView(repo.OwnerName, repo.Name, beginTime, endTime) |
|
|
|
var numVisits int |
|
|
|
numVisits, err = repository.AppointProjectView(repo.OwnerName, repo.Name, beginTime, endTime) |
|
|
|
if err != nil { |
|
|
|
log.Error("Get numVisits failed", err) |
|
|
|
numVisits = 0 |
|
|
|
log.Error("AppointProjectView failed(%s): %v", repo.Name, err) |
|
|
|
} |
|
|
|
|
|
|
|
repoStat := models.RepoStatistic{ |
|
|
@@ -80,21 +81,21 @@ func RepoStatisticDaily(date string) { |
|
|
|
NumVisits: int64(numVisits), |
|
|
|
NumClosedIssues: int64(repo.NumClosedIssues), |
|
|
|
NumVersions: numVersions, |
|
|
|
NumDevMonths: repoGitStat.DevelopAge, |
|
|
|
NumDevMonths: numDevMonths, |
|
|
|
RepoSize: repo.Size, |
|
|
|
DatasetSize: datasetSize, |
|
|
|
NumModels: 0, |
|
|
|
NumWikiViews: repoGitStat.WikiPages, |
|
|
|
NumWikiViews: numWikiViews, |
|
|
|
NumCommits: repo.NumCommit, |
|
|
|
NumIssues: int64(repo.NumIssues), |
|
|
|
NumPulls: int64(repo.NumPulls), |
|
|
|
IssueFixedRate: issueFixedRate, |
|
|
|
NumContributor: repoGitStat.Contributors, |
|
|
|
NumKeyContributor: repoGitStat.KeyContributors, |
|
|
|
NumContributor: numContributor, |
|
|
|
NumKeyContributor: numKeyContributor, |
|
|
|
} |
|
|
|
|
|
|
|
if _, err = models.InsertRepoStat(&repoStat); err != nil { |
|
|
|
log.Error("InsertRepoStat failed: %s", repo.Name) |
|
|
|
log.Error("InsertRepoStat failed(%s): %v", repo.Name, err) |
|
|
|
log.Error("failed statistic: %s", repo.Name) |
|
|
|
continue |
|
|
|
} |
|
|
|