- Make usage language more accurate by stating "repositories"
- Have usage counter be based on a 4 weeks TTL - Add a simple usage counter breakage test
This commit is contained in:
		
							parent
							
								
									79e4864eb2
								
							
						
					
					
						commit
						4eedd54b66
					
				
					 5 changed files with 20 additions and 8 deletions
				
			
		|  | @ -3,7 +3,7 @@ import logging | |||
| import dateutil.parser | ||||
| import json | ||||
| 
 | ||||
| from datetime import datetime, timedelta | ||||
| from datetime import datetime, timedelta, date | ||||
| 
 | ||||
| from data.database import (User, Repository, Image, AccessToken, Role, RepositoryPermission, | ||||
|                            Visibility, RepositoryTag, EmailConfirmation, FederatedLogin, | ||||
|  | @ -2225,11 +2225,13 @@ def confirm_team_invite(code, user): | |||
| 
 | ||||
| 
 | ||||
| def get_repository_usage(): | ||||
|   one_month_ago = date.today() - timedelta(weeks=4) | ||||
|   repo_pull = LogEntryKind.get(name = 'pull_repo') | ||||
|   repo_verb = LogEntryKind.get(name = 'repo_verb') | ||||
|   return (LogEntry.select() | ||||
|                   .where((LogEntry.kind == repo_pull) | (LogEntry.kind == repo_verb)) | ||||
|                   .where(~(LogEntry.repository >> None)) | ||||
|                   .where(LogEntry.datetime >= one_month_ago) | ||||
|                   .group_by(LogEntry.ip) | ||||
|                   .group_by(LogEntry.repository) | ||||
|                   .count()) | ||||
|  |  | |||
		Reference in a new issue