Skip to content
Snippets Groups Projects
Select Git revision
  • 39626f45d96d624a970f2a0f4825e4f6bb5cc817
  • master default protected
  • release/202005
  • release/202001
  • release/201912
  • release/201911
  • release/releaseWindowsTestOne
  • release/windowsReleaseTest
  • release/releaseTest
  • release/releaseWindowsTest
  • release/201910
  • release/qt/201910
  • release/windows-test/201910
  • release/201908
  • release/201906
  • release/201905
  • release/201904
  • release/201903
  • release/201902
  • release/201901
  • release/201812
  • 4.0.0
  • 2.2.0
  • 2.1.0
  • 2.0.1
  • 2.0.0
  • 1.4.1
  • 1.4.0
  • 1.3.0
  • 1.2.0
  • 1.1.0
31 results

logger.scm

Blame
  • Code owners
    Assign users and groups as approvers for specific file changes. Learn more.
    logger.scm 826 B
    (define-module (jami logger)
      #:use-module ((jami logger bindings) #:prefix ffi:)
      #:export (debug
                info
                warning
                error))
    
    (define-syntax-rule (logging% lvl fmt args ...)
      (let* ((source-location (current-source-location))
             (filename (or (assq-ref source-location 'filename) "<guile>"))
             (line (or (assq-ref source-location 'line) -1)))
        (ffi:log lvl
                 filename
                 (+ line 1)
                 (format #f fmt args ...))))
    
    (define-syntax-rule (debug fmt args ...)
      (logging% ffi:LOG_DEBUG fmt args ...))
    
    (define-syntax-rule (info fmt args ...)
      (logging% ffi:LOG_INFO fmt args ...))
    
    (define-syntax-rule (warning fmt args ...)
      (logging% ffi:LOG_WARNING fmt args ...))
    
    (define-syntax-rule (error fmt args ...)
      (logging% ffi:LOG_ERR fmt args ...))