Also use anytime-path in log.rkt
This commit is contained in:
		
							parent
							
								
									cf74ffb0e2
								
							
						
					
					
						commit
						dfc9605cb6
					
				
					 2 changed files with 17 additions and 5 deletions
				
			
		| 
						 | 
				
			
			@ -136,7 +136,10 @@
 | 
			
		|||
    (error 'anytime-path "syntax source has no directory: ~v" stx))
 | 
			
		||||
  (datum->syntax
 | 
			
		||||
   stx
 | 
			
		||||
   `(let* ([syntax-to-root (build-path (path-only ,source) ,to-root)]
 | 
			
		||||
   `(let* ([source ,source]
 | 
			
		||||
           [dir-of-source (path-only source)]
 | 
			
		||||
           [_ (unless (path? dir-of-source) (error 'anytime-path "syntax source has no directory: ~v" ,source))]
 | 
			
		||||
           [syntax-to-root (build-path dir-of-source ,to-root)]
 | 
			
		||||
           [root (if (directory-exists? syntax-to-root)
 | 
			
		||||
                     ;; running on the same filesystem it was compiled on, i.e. it's running the source code out of a directory, and the complication is the intermediate compilation
 | 
			
		||||
                     syntax-to-root
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
							
								
								
									
										15
									
								
								src/log.rkt
									
										
									
									
									
								
							
							
						
						
									
										15
									
								
								src/log.rkt
									
										
									
									
									
								
							| 
						 | 
				
			
			@ -1,7 +1,7 @@
 | 
			
		|||
#lang typed/racket/base
 | 
			
		||||
(require racket/file
 | 
			
		||||
         racket/path
 | 
			
		||||
         racket/port
 | 
			
		||||
         racket/runtime-path
 | 
			
		||||
         racket/string
 | 
			
		||||
         typed/srfi/19
 | 
			
		||||
         "config.rkt")
 | 
			
		||||
| 
						 | 
				
			
			@ -14,11 +14,20 @@
 | 
			
		|||
(define last-flush 0)
 | 
			
		||||
(define flush-every-millis 60000)
 | 
			
		||||
 | 
			
		||||
(define-runtime-path log-file "../storage/logs/access-0.log")
 | 
			
		||||
;; anytime-path macro expansion only works in an untyped submodule for reasons I cannot comprehend
 | 
			
		||||
(module define-log-dir racket/base
 | 
			
		||||
  (require racket/path
 | 
			
		||||
           "../lib/syntax.rkt")
 | 
			
		||||
  (provide log-dir)
 | 
			
		||||
  (define log-dir (anytime-path ".." "storage/logs")))
 | 
			
		||||
(require/typed (submod "." define-log-dir)
 | 
			
		||||
               [log-dir Path])
 | 
			
		||||
 | 
			
		||||
(define log-file (build-path log-dir "access-0.log"))
 | 
			
		||||
(define log-port
 | 
			
		||||
  (if (config-true? 'access_log::enabled)
 | 
			
		||||
      (begin
 | 
			
		||||
        (make-directory* (simplify-path (build-path log-file 'up)))
 | 
			
		||||
        (make-directory* log-dir)
 | 
			
		||||
        (open-output-file log-file #:exists 'append))
 | 
			
		||||
      (open-output-nowhere)))
 | 
			
		||||
 | 
			
		||||
| 
						 | 
				
			
			
 | 
			
		|||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue