mirror of
				https://github.com/MHSanaei/3x-ui.git
				synced 2025-10-30 03:42:51 +00:00 
			
		
		
		
	 64a5a9f1bc
			
		
	
	
		64a5a9f1bc
		
			
		
	
	
	
	
		
			
			* [refactor] api controller * [fix] access log path better to not hardcode the access log path, maybe some ppl dont want to use the default ./access.log * [fix] set select options from logs paths in xray settings * [update] .gitignore * [lint] all .go files * [update] use status code for jsonMsg and 401 to unauthorize * [update] handle response status code via axios * [fix] set correct value if log paths is set to 'none' we also use the default value for the paths if its set to none * [fix] iplimit - only warning access log if f2b is installed
		
			
				
	
	
		
			32 lines
		
	
	
	
		
			565 B
		
	
	
	
		
			Go
		
	
	
	
	
	
			
		
		
	
	
			32 lines
		
	
	
	
		
			565 B
		
	
	
	
		
			Go
		
	
	
	
	
	
| package job
 | |
| 
 | |
| import (
 | |
| 	"x-ui/logger"
 | |
| 	"x-ui/web/service"
 | |
| )
 | |
| 
 | |
| type CheckXrayRunningJob struct {
 | |
| 	xrayService service.XrayService
 | |
| 
 | |
| 	checkTime int
 | |
| }
 | |
| 
 | |
| func NewCheckXrayRunningJob() *CheckXrayRunningJob {
 | |
| 	return new(CheckXrayRunningJob)
 | |
| }
 | |
| 
 | |
| func (j *CheckXrayRunningJob) Run() {
 | |
| 	if j.xrayService.IsXrayRunning() {
 | |
| 		j.checkTime = 0
 | |
| 	} else {
 | |
| 		j.checkTime++
 | |
| 		// only restart if it's down 2 times in a row
 | |
| 		if j.checkTime > 1 {
 | |
| 			err := j.xrayService.RestartXray(false)
 | |
| 			j.checkTime = 0
 | |
| 			if err != nil {
 | |
| 				logger.Error("Restart xray failed:", err)
 | |
| 			}
 | |
| 		}
 | |
| 	}
 | |
| }
 |