유저생성 정보
로그인 정보 batch 추가
This commit is contained in:
@@ -14,7 +14,9 @@ public enum StatisticsType {
|
|||||||
CAPACITY,
|
CAPACITY,
|
||||||
UGQ_CREATE,
|
UGQ_CREATE,
|
||||||
SERVER_INFO,
|
SERVER_INFO,
|
||||||
MONEY
|
MONEY,
|
||||||
|
USER_CREATE,
|
||||||
|
USER_LOGIN
|
||||||
;
|
;
|
||||||
|
|
||||||
public static StatisticsType getStatisticsType(String type) {
|
public static StatisticsType getStatisticsType(String type) {
|
||||||
|
|||||||
@@ -0,0 +1,26 @@
|
|||||||
|
package com.caliverse.admin.Indicators.entity;
|
||||||
|
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
import org.springframework.data.mongodb.core.mapping.Document;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
@Document(collection = "userCreate")
|
||||||
|
public class UserCreateLogInfo extends LogInfoBase{
|
||||||
|
private String logDay;
|
||||||
|
private String accountId;
|
||||||
|
private String userGuid;
|
||||||
|
private String userNickname;
|
||||||
|
private String createdTime;
|
||||||
|
|
||||||
|
public UserCreateLogInfo(String logDay, String accountId, String userGuid, String userNickname, String createdTime) {
|
||||||
|
super(StatisticsType.USER_CREATE);
|
||||||
|
|
||||||
|
this.logDay = logDay;
|
||||||
|
this.accountId = accountId;
|
||||||
|
this.userGuid = userGuid;
|
||||||
|
this.userNickname = userNickname;
|
||||||
|
this.createdTime = createdTime;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,46 @@
|
|||||||
|
package com.caliverse.admin.Indicators.entity;
|
||||||
|
|
||||||
|
import lombok.Getter;
|
||||||
|
import lombok.Setter;
|
||||||
|
import org.springframework.data.mongodb.core.mapping.Document;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
@Getter
|
||||||
|
@Setter
|
||||||
|
@Document(collection = "userLogin")
|
||||||
|
public class UserLoginLogInfo extends LogInfoBase{
|
||||||
|
private String logDay;
|
||||||
|
private String accountId;
|
||||||
|
private String userGuid;
|
||||||
|
private String userNickname;
|
||||||
|
private List<Map<String, Object>> sessions;
|
||||||
|
private String firstLoginTime;
|
||||||
|
private String lastLogoutTime;
|
||||||
|
private Integer loginCount;
|
||||||
|
private Double totalPlayTime;
|
||||||
|
|
||||||
|
public UserLoginLogInfo(String logDay,
|
||||||
|
String accountId,
|
||||||
|
String userGuid,
|
||||||
|
String userNickname,
|
||||||
|
List<Map<String, Object>> sessions,
|
||||||
|
String firstLoginTime,
|
||||||
|
String lastLogoutTime,
|
||||||
|
Integer loginCount,
|
||||||
|
Double totalPlayTime)
|
||||||
|
{
|
||||||
|
super(StatisticsType.USER_LOGIN);
|
||||||
|
|
||||||
|
this.logDay = logDay;
|
||||||
|
this.accountId = accountId;
|
||||||
|
this.userGuid = userGuid;
|
||||||
|
this.userNickname = userNickname;
|
||||||
|
this.sessions = sessions;
|
||||||
|
this.firstLoginTime = firstLoginTime;
|
||||||
|
this.lastLogoutTime = lastLogoutTime;
|
||||||
|
this.loginCount = loginCount;
|
||||||
|
this.totalPlayTime = totalPlayTime;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
package com.caliverse.admin.Indicators.indicatorrepository;
|
||||||
|
|
||||||
|
import com.caliverse.admin.Indicators.entity.UserCreateLogInfo;
|
||||||
|
import org.springframework.data.mongodb.repository.MongoRepository;
|
||||||
|
|
||||||
|
public interface IndicatorUserCreateRepository extends MongoRepository<UserCreateLogInfo, String> {
|
||||||
|
}
|
||||||
@@ -0,0 +1,7 @@
|
|||||||
|
package com.caliverse.admin.Indicators.indicatorrepository;
|
||||||
|
|
||||||
|
import com.caliverse.admin.Indicators.entity.UserLoginLogInfo;
|
||||||
|
import org.springframework.data.mongodb.repository.MongoRepository;
|
||||||
|
|
||||||
|
public interface IndicatorUserLoginRepository extends MongoRepository<UserLoginLogInfo, String> {
|
||||||
|
}
|
||||||
@@ -195,8 +195,8 @@ public class ScheduleSetter {
|
|||||||
}
|
}
|
||||||
|
|
||||||
//log
|
//log
|
||||||
@Scheduled(cron = "00 00 00 1 * ?") // 매월 1일에 실행
|
// @Scheduled(cron = "00 00 00 1 * ?") // 매월 1일에 실행
|
||||||
public void logJob(){
|
// public void logJob(){
|
||||||
logService.compressLastMonthLogs();
|
// logService.compressLastMonthLogs();
|
||||||
}
|
// }
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,11 +5,15 @@ import com.caliverse.admin.domain.service.BlackListService;
|
|||||||
import com.caliverse.admin.domain.service.EventService;
|
import com.caliverse.admin.domain.service.EventService;
|
||||||
import com.caliverse.admin.domain.service.MailService;
|
import com.caliverse.admin.domain.service.MailService;
|
||||||
import com.caliverse.admin.domain.service.NoticeService;
|
import com.caliverse.admin.domain.service.NoticeService;
|
||||||
|
import com.caliverse.admin.global.common.constants.AdminConstants;
|
||||||
import com.caliverse.admin.global.common.utils.ExcelUtils;
|
import com.caliverse.admin.global.common.utils.ExcelUtils;
|
||||||
|
import com.caliverse.admin.logs.Indicatordomain.StartEndTime;
|
||||||
|
import com.caliverse.admin.logs.logservice.LogServiceHelper;
|
||||||
import com.caliverse.admin.logs.logservice.indicators.*;
|
import com.caliverse.admin.logs.logservice.indicators.*;
|
||||||
import com.caliverse.admin.redis.service.RedisUserInfoService;
|
import com.caliverse.admin.redis.service.RedisUserInfoService;
|
||||||
import com.caliverse.admin.scheduler.DynamicScheduler;
|
import com.caliverse.admin.scheduler.DynamicScheduler;
|
||||||
import com.caliverse.admin.scheduler.SchedulerManager;
|
import com.caliverse.admin.scheduler.SchedulerManager;
|
||||||
|
import com.caliverse.admin.scheduler.batch.service.LogCompressService;
|
||||||
import com.caliverse.admin.scheduler.entity.SchedulerType;
|
import com.caliverse.admin.scheduler.entity.SchedulerType;
|
||||||
import lombok.RequiredArgsConstructor;
|
import lombok.RequiredArgsConstructor;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
@@ -26,6 +30,27 @@ public class ScheduleRunnerBatch {
|
|||||||
|
|
||||||
private final SchedulerManager schedulerManager;
|
private final SchedulerManager schedulerManager;
|
||||||
|
|
||||||
|
@Autowired private LogCompressService logService;
|
||||||
|
|
||||||
|
@Autowired private IndicatorsUserCreateService userCreateService;
|
||||||
|
@Autowired private IndicatorsUserLoginService userLoginService;
|
||||||
|
|
||||||
|
//log backup
|
||||||
|
@Scheduled(cron = "00 00 00 1 * ?") // 매월 1일에 실행
|
||||||
|
public void logJob(){
|
||||||
|
logService.compressLastMonthLogs();
|
||||||
|
}
|
||||||
|
|
||||||
|
@Scheduled(cron = "00 30 0 * * *") // 매일 UTC 기준 00시 30분 00초에 실행
|
||||||
|
public void userCreateScheduler() {
|
||||||
|
StartEndTime startEndTime = LogServiceHelper.getCurrentLogSearchEndTime(AdminConstants.STAT_DAY_NUM);
|
||||||
|
userCreateService.collectUserCreate(startEndTime.getStartTime(), startEndTime.getEndTime());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Scheduled(cron = "30 30 0 * * *") // 매일 UTC 기준 00시 30분 30초에 실행
|
||||||
|
public void userLoginScheduler() {
|
||||||
|
StartEndTime startEndTime = LogServiceHelper.getCurrentLogSearchEndTime(AdminConstants.STAT_DAY_NUM);
|
||||||
|
userLoginService.collectUserLogin(startEndTime.getStartTime(), startEndTime.getEndTime());
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user