- 
                Notifications
    
You must be signed in to change notification settings  - Fork 1
 
Added wal-g exporter to prometheus #3
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. Weβll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Changes from 1 commit
3cd6e7f
              3c0e884
              69b468a
              06d4c4d
              4c74154
              2c7e634
              6e6dbec
              d6467aa
              8a76ed7
              8b801c0
              File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change | 
|---|---|---|
| @@ -0,0 +1,39 @@ | ||
| run: | ||
| timeout: 5m | ||
| modules-download-mode: readonly | ||
| 
     | 
||
| linters: | ||
| enable: | ||
| - gofmt | ||
| - goimports | ||
| - govet | ||
| - ineffassign | ||
| - misspell | ||
| - revive | ||
| - staticcheck | ||
| - unused | ||
| disable: | ||
| - errcheck | ||
| - gosec | ||
| - gosimple | ||
| 
     | 
||
| linters-settings: | ||
| revive: | ||
| rules: | ||
| - name: unused-parameter | ||
| disabled: true | ||
| - name: exported | ||
| disabled: true | ||
| 
     | 
||
| issues: | ||
| exclude-use-default: false | ||
| max-issues-per-linter: 0 | ||
| max-same-issues: 0 | ||
| 
     | 
||
| exclude-rules: | ||
| - text: "should have comment" | ||
| linters: | ||
| - revive | ||
| - text: "comment on exported" | ||
| linters: | ||
| - revive | 
| Original file line number | Diff line number | Diff line change | ||||
|---|---|---|---|---|---|---|
| @@ -0,0 +1,251 @@ | ||||||
| # WAL-G Prometheus Exporter | ||||||
| 
     | 
||||||
| A Prometheus exporter for WAL-G backup and WAL metrics for PostgreSQL databases. | ||||||
| 
     | 
||||||
| ## Features | ||||||
| 
     | 
||||||
| - **Backup lag monitoring**: Track time since last backup-push (full and delta backups) | ||||||
| - **WAL lag monitoring**: Monitor time since last wal-push operation | ||||||
| - **LSN delta lag**: Calculate LSN lag in bytes between current and archived WAL | ||||||
| - **PITR window**: Monitor point-in-time recovery window size | ||||||
| - **Error monitoring**: Track WAL-G operation errors | ||||||
| - **WAL integrity**: Monitor WAL segment integrity status per timeline | ||||||
| 
     | 
||||||
| ## Metrics | ||||||
| 
     | 
||||||
| The exporter provides the following metrics: | ||||||
| 
     | 
||||||
| ### Backup Metrics | ||||||
| - `walg_backup_lag_seconds{backup_type}` - Time since last backup-push in seconds | ||||||
| - `walg_backup_count{backup_type}` - Number of backups (full/delta) | ||||||
                
       | 
||||||
| - `walg_backup_timestamp{backup_type}` - Timestamp of last backup | ||||||
| 
     | 
||||||
| ### WAL Metrics | ||||||
| - `walg_wal_lag_seconds{timeline}` - Time since last wal-push in seconds | ||||||
                
       | 
||||||
| - `walg_wal_lag_seconds{timeline}` - Time since last wal-push in seconds | |
| - `walg_wal_lag_seconds{timeline}` - Time since last successful wal-push in seconds | 
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Another question: "time since" is a derived metric. Isn't it better to export timestamps and let monitoring decide what to show to users/AI, raw timestamps or lag values (or both)?
        
          
              
                Outdated
          
        
      There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
what if we have gaps / multiple windows?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
for all timestamps, let's specify clearly if it's timestamp of beginning of the process of end of it