Skip to content
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

Migrate configuration handling to the confuse lib #363

Closed
wants to merge 170 commits into from

Commits on Apr 3, 2021

  1. Initial commit

    martomi authored Apr 3, 2021
    Configuration menu
    Copy the full SHA
    3c3c1b5 View commit details
    Browse the repository at this point in the history
  2. Push initial version

    martomi committed Apr 3, 2021
    Configuration menu
    Copy the full SHA
    1f84591 View commit details
    Browse the repository at this point in the history

Commits on Apr 4, 2021

  1. Configuration menu
    Copy the full SHA
    8d4bb98 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    60f0f80 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    f660d2a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    6605056 View commit details
    Browse the repository at this point in the history
  5. CHANGELOG: Add version 0.1.0

    martomi committed Apr 4, 2021
    Configuration menu
    Copy the full SHA
    b2cb13c View commit details
    Browse the repository at this point in the history

Commits on Apr 5, 2021

  1. Add finished signage point checks

    Check that the full node doesn't skip any signage points. If it does,
    send a normal priority notification.
    martomi committed Apr 5, 2021
    Configuration menu
    Copy the full SHA
    f1df38b View commit details
    Browse the repository at this point in the history
  2. Increase threshold for time since last farming event

    The 30 second threshold is violated multiple times per day in the
    current network. It's not exactly clear to me why but further analysis
    of the logs shows that no signage points are skipped which indicates
    that the farmer can still participate in all challenges.
    
    Chiadog is now monitoring signage points so we can safely increase
    the threshold here and rely more on other checks.
    martomi committed Apr 5, 2021
    Configuration menu
    Copy the full SHA
    e7cac7e View commit details
    Browse the repository at this point in the history
  3. Add more verbose logs for better insights

    Logs indicating what checks and services are active to help provide
    confidence that everything is running.
    
    Also add warning log in case no notification service was enabled in the
    config and info log for every keep-alive check.
    martomi committed Apr 5, 2021
    Configuration menu
    Copy the full SHA
    ea48bfc View commit details
    Browse the repository at this point in the history
  4. Subscribe to log consumer after initializing the handlers

    There's a race condition and it can happen that the log consumer tries
    to call the log handler before it is fully initialized.
    martomi committed Apr 5, 2021
    Configuration menu
    Copy the full SHA
    c782059 View commit details
    Browse the repository at this point in the history
  5. LogConsumer: Add network log consumer over SSH

    This will enable monitoring remote harvester(s). Pre-requisite is having
    setup key-based SSH authentication with your harvester machine.
    martomi committed Apr 5, 2021
    Configuration menu
    Copy the full SHA
    5304b4a View commit details
    Browse the repository at this point in the history
  6. Configuration: Add title prefix for notifications

    This will help to distinguish notifications when running multiple
    instances of chiadog to monitor more than 1 remote harvester.
    
    Just create multiple configs for each harvester with unique prefix and
    correct IP configuration and execute:
    
    python3 main.py --config config-1.yaml
    python3 main.py --config config-2.yaml
    python3 main.py --config config-3.yaml
    martomi committed Apr 5, 2021
    Configuration menu
    Copy the full SHA
    a53a879 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    3f6112b View commit details
    Browse the repository at this point in the history
  8. Small tweaks on logs and notifications

    * Downgrade keep-alive logs to DEBUG
    * Make notification texts more consistent with <Problem> <Reason> format
    martomi committed Apr 5, 2021
    Configuration menu
    Copy the full SHA
    5340cd5 View commit details
    Browse the repository at this point in the history
  9. Signage Points Check: Handle network scramble scenario

    This is scenario observed on actual network. Seems unrelated to local
    node because it's observable from multiple nodes at the same time.
    
    Add some handling to ignore these type of events and reduce the
    resulting false alarms.
    martomi committed Apr 5, 2021
    Configuration menu
    Copy the full SHA
    44eaafd View commit details
    Browse the repository at this point in the history
  10. TimeSinceLastFarmEvent: Add info threshold for transparency

    Might be a good idea to have these visible at least as INFO logs to
    understand how the network behaves over time.
    martomi committed Apr 5, 2021
    Configuration menu
    Copy the full SHA
    6086395 View commit details
    Browse the repository at this point in the history
  11. CHANGELOG: Add version 0.2.0

    martomi committed Apr 5, 2021
    Configuration menu
    Copy the full SHA
    05962e1 View commit details
    Browse the repository at this point in the history

Commits on Apr 13, 2021

  1. Adds script notifier

    ajacobson authored and martomi committed Apr 13, 2021
    Configuration menu
    Copy the full SHA
    39aa526 View commit details
    Browse the repository at this point in the history
  2. add 'pip3 install wheel' to docs

    johnrees authored and martomi committed Apr 13, 2021
    Configuration menu
    Copy the full SHA
    d00bf88 View commit details
    Browse the repository at this point in the history
  3. Demo: Add conditional tests for demo notifications

    Export SHOWCASE_NOTIFICATIONS=1 on top of API token and user key and run
    tests to generate presentable notifications:
    
    python3 -m unittest
    tests.notifier.test_pushover_notifier.TestPushoverNotifier.testShowcaseGoodNotifications
    
    python3 -m unittest
    tests.notifier.test_pushover_notifier.TestPushoverNotifier.testShowcaseBadNotifications
    martomi committed Apr 13, 2021
    Configuration menu
    Copy the full SHA
    db0c42a View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    99490e1 View commit details
    Browse the repository at this point in the history
  5. Bump pyyaml from 5.3.1 to 5.4

    Bumps [pyyaml](https://github.com/yaml/pyyaml) from 5.3.1 to 5.4.
    - [Release notes](https://github.com/yaml/pyyaml/releases)
    - [Changelog](https://github.com/yaml/pyyaml/blob/master/CHANGES)
    - [Commits](yaml/pyyaml@5.3.1...5.4)
    
    Signed-off-by: dependabot[bot] <[email protected]>
    dependabot[bot] authored and martomi committed Apr 13, 2021
    Configuration menu
    Copy the full SHA
    742e41f View commit details
    Browse the repository at this point in the history
  6. Add TelegramNotifier

    Implements notifications through the Telegram API:
    https://core.telegram.org/bots/api
    MiguelCarranza authored and martomi committed Apr 13, 2021
    Configuration menu
    Copy the full SHA
    99f6258 View commit details
    Browse the repository at this point in the history
  7. Fix formatting (run black)

    martomi committed Apr 13, 2021
    Configuration menu
    Copy the full SHA
    6a1d006 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    a1e06c6 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    3c6679b View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    a8c0fcc View commit details
    Browse the repository at this point in the history
  11. Tests: Make integration tests optional

    Run notifier integration tests only if environment variables are
    provided. This makes it easier for anyone to run the full-suite of tests
    without needing to register for tokens for all integrations.
    martomi committed Apr 13, 2021
    Configuration menu
    Copy the full SHA
    44c1144 View commit details
    Browse the repository at this point in the history
  12. Tests: Fix typo in test names

    martomi committed Apr 13, 2021
    Configuration menu
    Copy the full SHA
    3c74b02 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    61d1a42 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    4e5d98b View commit details
    Browse the repository at this point in the history
  15. Configuration menu
    Copy the full SHA
    4c4a6ed View commit details
    Browse the repository at this point in the history
  16. CHANGELOG: Add version 0.3.0

    martomi committed Apr 13, 2021
    Configuration menu
    Copy the full SHA
    82d59f1 View commit details
    Browse the repository at this point in the history

Commits on Apr 15, 2021

  1. README: Clarify how integrations are used

    There was confusion that chiadog is somehow reliant on Telegram API.
    martomi committed Apr 15, 2021
    Configuration menu
    Copy the full SHA
    b3d486e View commit details
    Browse the repository at this point in the history

Commits on Apr 19, 2021

  1. Add DiscordNotifier

    kilbot authored and martomi committed Apr 19, 2021
    Configuration menu
    Copy the full SHA
    ecf6a96 View commit details
    Browse the repository at this point in the history

Commits on Apr 20, 2021

  1. Add SMTP Notifier for Email Support

    * Trying to re-use the SMTP server connection if it is still available.
    * Tested using AWS SES, but any SMTP relay should work.
    * Include SMTP details in README
    
    Co-authored-by: Martin Mihaylov <[email protected]>
    mikehw and martomi authored Apr 20, 2021
    Configuration menu
    Copy the full SHA
    4a7e789 View commit details
    Browse the repository at this point in the history

Commits on Apr 22, 2021

  1. Configuration menu
    Copy the full SHA
    4a2ce7c View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1acf3be View commit details
    Browse the repository at this point in the history
  3. NotifierManager: Report time taken for sending events

    Would be useful to now if any of the notifiers are taking too long to
    execute so we can potentially address the issues in the future.
    martomi committed Apr 22, 2021
    Configuration menu
    Copy the full SHA
    b809ccc View commit details
    Browse the repository at this point in the history
  4. Tests: Reduce repetetive code for notifier tests

    Also reducing number of events per category to 1 (except for low
    priority). Otherwise tests are sometimes failing due to making too many
    consequetive requests to some services.
    martomi committed Apr 22, 2021
    Configuration menu
    Copy the full SHA
    bfea88a View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    ee89bde View commit details
    Browse the repository at this point in the history
  6. Notifier: Fix uncaught exceptions and set timeouts

    If the internet connection is interrupted and a notifier attempts to
    send a notification to the user, it'll fail with uncaught exception
    which prevents the watchdog process from further attempts.
    
    This applies a critical fix that will prevent that.
    
    Also add explicit timeouts for all network requests and switch to a less
    confusing return value. True = Success instead of True == Failure.
    martomi committed Apr 22, 2021
    Configuration menu
    Copy the full SHA
    a81a660 View commit details
    Browse the repository at this point in the history
  7. Add capability for remote watchdog to chiadog

    Provides a second layer of redundancy for the use-cases when chiadog is
    unable to notify you.
    martomi committed Apr 22, 2021
    Configuration menu
    Copy the full SHA
    ec52842 View commit details
    Browse the repository at this point in the history
  8. README: Move integrations into separate page

    Declutter the main README page by providing shorter summary overview of
    available integrations and move detailed instructions outside.
    martomi committed Apr 22, 2021
    Configuration menu
    Copy the full SHA
    2e41fe2 View commit details
    Browse the repository at this point in the history
  9. README: Add step to update pip3

    Closes martomi#29
    martomi committed Apr 22, 2021
    Configuration menu
    Copy the full SHA
    15adb45 View commit details
    Browse the repository at this point in the history

Commits on Apr 23, 2021

  1. Configuration menu
    Copy the full SHA
    4725715 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    a12a4b4 View commit details
    Browse the repository at this point in the history
  3. Signage Points: Don't send notifications for individual skips

    To reduce noise from chiadog, individual skips that are very infrequent
    and happen only a few times per day will no longer be reported through
    immediate notifications. All skips will be included in the daily summary
    however, and they'll also be still visible in the logs.
    
    If there are more than 1 single skip within 60 minutes, that will be
    considered an issue and reported via notification. Same for larger gaps
    in signage points. The exact gap will also be reported now.
    martomi committed Apr 23, 2021
    Configuration menu
    Copy the full SHA
    101d246 View commit details
    Browse the repository at this point in the history
  4. Handlers: Add wallet log handler for added coins

    This will replace the notifications for found proof because finding a
    proof is not a guarantee for a farmer reward. The found proofs will
    still be tracked and reported in the daily summary.
    
    This also has the side-effect that it'll probably also work with
    transactions and not only farmer rewards.
    martomi committed Apr 23, 2021
    Configuration menu
    Copy the full SHA
    02c3442 View commit details
    Browse the repository at this point in the history

Commits on Apr 24, 2021

  1. Add option to send out daily stats summary

    * New notification type DAILY_STATS
    * StatsManager that collects stats and sends out daily
    * Configurable time of day when the summary is sent out
    * Follow similar pattern to condition checkers for stat accumulators
    martomi committed Apr 24, 2021
    Configuration menu
    Copy the full SHA
    908f1e8 View commit details
    Browse the repository at this point in the history
  2. SMTP Notifier: Send message in email body

    This is now necessary because daily summary notifications are longer and
    don't fit in the email subject.
    martomi committed Apr 24, 2021
    Configuration menu
    Copy the full SHA
    acf083a View commit details
    Browse the repository at this point in the history
  3. Notifier: Add configurable notification categories

    * It's now possible to enable / disable daily summary notification
      individually for each integration. E.g. only receive daily summaries
      over E-mail and use Pushover only for alarms.
    * Same for wallet notifications which are only informatve
    martomi committed Apr 24, 2021
    Configuration menu
    Copy the full SHA
    a836c27 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    858f69f View commit details
    Browse the repository at this point in the history
  5. Notifier: Add emoji for low priority events

    For consistency and also fixes a bug that prevents * markdown style to
    work because of empty space following after that without icon.
    martomi committed Apr 24, 2021
    Configuration menu
    Copy the full SHA
    ef6b819 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    0200630 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    c996990 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    db71620 View commit details
    Browse the repository at this point in the history

Commits on Apr 25, 2021

  1. Remove wallet events and added coins parser / handlers

    This log has been removed from chia in the most recent versions so it
    serves no purpose to have the logic here. I've submitted a PR to re-add
    the log back, if that happens we can revert this change.
    
    Chia-Network/chia-blockchain#2720
    martomi committed Apr 25, 2021
    Configuration menu
    Copy the full SHA
    55446ed View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    89ae7f3 View commit details
    Browse the repository at this point in the history
  3. CHANGELOG: Add version 0.4.0

    Ammend: Added notes about dropped wallet feature:
    martomi#40
    martomi committed Apr 25, 2021
    Configuration menu
    Copy the full SHA
    c278243 View commit details
    Browse the repository at this point in the history

Commits on Apr 27, 2021

  1. Update issue templates

    martomi authored Apr 27, 2021
    Configuration menu
    Copy the full SHA
    b3942b9 View commit details
    Browse the repository at this point in the history
  2. Add Windows support (martomi#43)

    * Add Windows support for file read and interrupt.
    * Add install/start scripts for Windows and Linux
    skrustev authored and martomi committed Apr 27, 2021
    Configuration menu
    Copy the full SHA
    7527a08 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    54bbd45 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    d700154 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    57a3ed4 View commit details
    Browse the repository at this point in the history
  6. Remove experimental windows instructions

    Not yet ready for release. Needs more testing and better instructions.
    martomi committed Apr 27, 2021
    Configuration menu
    Copy the full SHA
    c9ac091 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    30ea377 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    3733030 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    26099e1 View commit details
    Browse the repository at this point in the history
  10. Add Windows Support for Network Log Consumer (martomi#47)

    * Remote host discovery through uname
    pieterhelsen authored and martomi committed Apr 27, 2021
    Configuration menu
    Copy the full SHA
    2f63f68 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    82a300a View commit details
    Browse the repository at this point in the history
  12. CHANGELOG: Add version 0.4.1

    martomi committed Apr 27, 2021
    Configuration menu
    Copy the full SHA
    d382135 View commit details
    Browse the repository at this point in the history

Commits on Apr 30, 2021

  1. Configuration menu
    Copy the full SHA
    cd5c2be View commit details
    Browse the repository at this point in the history

Commits on May 2, 2021

  1. Improve cross-platform implementation (martomi#68)

    Made the following changes to fix a Pathlib bug where the log file could not be found in the event of a Windows-run chiadog connecting to a remote Linux harvester:
    
    - Renamed `_get_remote_platform()` to `get_host_info()` and made it static.
    - Moved `get_host_info()` from class initializer to `create_log_consumer_from_config()`
    - Replaced `Path` with either `PosixPurePath` or `WindowsPurePath` depending on  remote host OS info
    - Added line to `.gitignore` to allow multi-remote testing
    - Updated `util.py` (code formatter output)
    pieterhelsen authored May 2, 2021
    Configuration menu
    Copy the full SHA
    5653063 View commit details
    Browse the repository at this point in the history

Commits on May 5, 2021

  1. Hotfix WindowsPath (martomi#81)

    Expanded path needed to be passed to Popen as a string.
    
    Closes martomi#80
    pieterhelsen authored May 5, 2021
    Configuration menu
    Copy the full SHA
    4c8b5ad View commit details
    Browse the repository at this point in the history
  2. Install.sh: Add python check

    Added Python check to verify python version is 3.7 or above before proceeding with installation
    pieterhelsen authored and martomi committed May 5, 2021
    Configuration menu
    Copy the full SHA
    c3b47ef View commit details
    Browse the repository at this point in the history

Commits on May 8, 2021

  1. Revert "Remove wallet events and added coins parser / handlers"

    This reverts commit 3a6cbe2.
    
    As of Chia 1.1.3, the log for added coins is active again so we can
    restore that feature.
    martomi committed May 8, 2021
    Configuration menu
    Copy the full SHA
    417d27c View commit details
    Browse the repository at this point in the history
  2. Tests: Add UTF-8 when opening files

    This is required for Windows to correctly read the files.
    martomi committed May 8, 2021
    Configuration menu
    Copy the full SHA
    f30799c View commit details
    Browse the repository at this point in the history

Commits on May 9, 2021

  1. Add Total Searches to Daily Stats (martomi#95)

    Add overall total number of searches. Also add percentage of total searches for 5s/15 measurements
    pieterhelsen authored May 9, 2021
    Configuration menu
    Copy the full SHA
    e90648e View commit details
    Browse the repository at this point in the history

Commits on May 11, 2021

  1. Add MQTT Notifier (martomi#94)

    Added support for an optional MQTT notifier.
    The notifier supports optional username/password authentication
    Added MQTT instructions to INTEGRATIONS.md.
    pieterhelsen authored May 11, 2021
    Configuration menu
    Copy the full SHA
    ab5f819 View commit details
    Browse the repository at this point in the history
  2. Custom SSH port - issue 89 (martomi#101)

    Custom SSH port for remote logs can now be specified in config.yaml (issue martomi#89)
    turekjiri authored May 11, 2021
    Configuration menu
    Copy the full SHA
    85cd2af View commit details
    Browse the repository at this point in the history

Commits on May 13, 2021

  1. Skipped SPs: Improve handling of out-of-order events

    * Dowgrade log output about out-of-order events to debug log level to
      reduce questions and concerns about this (expected) phenomenon
    * Add clarification to the comment explaining when it happens
    * Add validity flag in the return that allows the users of the function
      to clear their state from wrong previous SP records. Thus preventing
      incorrect signage point skip notifications.
    martomi committed May 13, 2021
    Configuration menu
    Copy the full SHA
    d50f041 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    784b922 View commit details
    Browse the repository at this point in the history
  3. WINDOWS: Add experimental note and link to known bugs

    There are still unresolved known issues on Windows so add a note about
    that to reduce repeated reports and questions.
    martomi committed May 13, 2021
    Configuration menu
    Copy the full SHA
    ad6ecbd View commit details
    Browse the repository at this point in the history
  4. CHANGELOG: Add version 0.5.0

    martomi committed May 13, 2021
    Configuration menu
    Copy the full SHA
    f089cc5 View commit details
    Browse the repository at this point in the history

Commits on May 14, 2021

  1. Fix potential out-of-bounds config value

    pieterhelsen authored and martomi committed May 14, 2021
    Configuration menu
    Copy the full SHA
    42c5054 View commit details
    Browse the repository at this point in the history

Commits on May 15, 2021

  1. Fix wallet events

    amount in debug.log is no longer quoted
    skweee authored and martomi committed May 15, 2021
    Configuration menu
    Copy the full SHA
    dcee7fc View commit details
    Browse the repository at this point in the history
  2. Add CI workflow (martomi#115)

    * Run black, flake8 and mypy tests on creating a pull request.
    * Use typing.Dict instead of dict to resolve mypy issue
    pieterhelsen authored May 15, 2021
    Configuration menu
    Copy the full SHA
    eccaeb8 View commit details
    Browse the repository at this point in the history

Commits on May 17, 2021

  1. HarvesterActivityParser: Correctly parse multi-digit number of plots (m…

    …artomi#133)
    
    Without this change, logs like this one were not correctly parsed:
    
    harvester chia.harvester.harvester: INFO     10 plots were eligible for farming c599f64427... Found 0 proofs. Time: 0.45573 s. Total X plots
    ctrlaltdel authored May 17, 2021
    Configuration menu
    Copy the full SHA
    4897322 View commit details
    Browse the repository at this point in the history
  2. SignagePoints: Fix wrong handling of fork events

    * Add test case for network fork
    * Fix logic to handle this case properly
    
    Fixes: martomi#116
    
    Should result in less false alarms.
    martomi committed May 17, 2021
    Configuration menu
    Copy the full SHA
    d9b7a34 View commit details
    Browse the repository at this point in the history
  3. CHANGELOG: Add version 0.5.1

    martomi committed May 17, 2021
    Configuration menu
    Copy the full SHA
    b60b00c View commit details
    Browse the repository at this point in the history

Commits on May 19, 2021

  1. Configuration menu
    Copy the full SHA
    75527c6 View commit details
    Browse the repository at this point in the history

Commits on May 23, 2021

  1. Improve multi-platform log rotation handling (martomi#164)

    * Add `pygtail` to enable better log rotation handling. It writes an artefact file (`debug.log.offset`) to the `chiadog` folder.
    * Add `retry` to catch Pygtail errors and retry
    * Add `has_rotated` method which reads log filesize over SSH using Powershell
    * Removed `paranoid` option from `Pygtail` - might not be required and requires considerable writes to disk. Should we still see 'harvester offline' false positives, this might be good to re-enable.
    * Remove OS-specific implementations of Local FileLogConsumer
    pieterhelsen authored May 23, 2021
    Configuration menu
    Copy the full SHA
    7cc8a90 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    2105440 View commit details
    Browse the repository at this point in the history

Commits on May 24, 2021

  1. NonDecreasingPlots: Increase tolerance threshold to 2

    Closes martomi#147
    Closes martomi#58
    
    I see little value in making refactors and adding additional
    configuration parameters for this. A threshold of 2 should resolve all
    issues that are experienced during copying of plots.
    
    Note that 2 is an instantenous threshold since the max value gets reset
    after that. Meaning that plot count may drop by 10 without a
    notification as long as its dropping in steps of 1.
    
    For transparency of what is happening, I've added an info log that is
    always triggered, regardless of the threshold.
    
    The test case is adjusted to contain a scenario with decreasing plot
    count by 1 which is expected not to trigger a notification.
    martomi committed May 24, 2021
    Configuration menu
    Copy the full SHA
    ea0420f View commit details
    Browse the repository at this point in the history
  2. CI Workflow: Fix black error (martomi#168)

    When running an unsuccessful `black` format check the script automatically runs the formatter and commits the altered source code.
    
    This currently results in an error:
    ```
    Run black src tests
    reformatted src/chia_log/log_consumer.py
    All done! ✨ 🍰 ✨
    1 file reformatted, 62 files left unchanged.
    error: pathspec 'feature/improve-harvester-offline' did not match any file(s) known to git
    Error: Process completed with exit code 1.
    ```
    
    Moved the black format check to the back of the queue, as it can be automatically fixed, while the others require manual intervention.
    
    Also removed the `black --check` since we want to make the changes anyhow
    pieterhelsen authored May 24, 2021
    Configuration menu
    Copy the full SHA
    c6cad54 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    c15835b View commit details
    Browse the repository at this point in the history
  4. FileLogConsumer: Throttle log polling

    Currently the loop isn't throttled which creates busy-wait and maxes out
    one of the CPU cores to 100%. This is because Pygtail exits its own loop
    every time it reaches the end of the debug.log file.
    
    This also makes WARNING logs about non-existing debug.log file during
    log rotation statistically improbable.
    martomi committed May 24, 2021
    Configuration menu
    Copy the full SHA
    aca2308 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    a78add4 View commit details
    Browse the repository at this point in the history
  6. Add --version switch (martomi#131)

    Add a new log line at startup that mentions the version number
    pieterhelsen authored May 24, 2021
    Configuration menu
    Copy the full SHA
    808bde4 View commit details
    Browse the repository at this point in the history
  7. LastFarmEvent: Increase warn threshold and improve message

    Since the network experiences delays up to 70-80 seconds occasionally,
    increase warning threshold to 90 to prevent false alarms.
    
    Also change text of info text to avoid frequent questions and concerns.
    martomi committed May 24, 2021
    Configuration menu
    Copy the full SHA
    d4a5ed2 View commit details
    Browse the repository at this point in the history
  8. Events: Bring back the found proof notifications

    closes martomi#167
    closes martomi#182
    
    The wallet events that were supposed to replace these notifications do
    not work in many of the scenarious that chiadog operates in.
    
    This commit reverses the removal of the found proof notifications.
    martomi committed May 24, 2021
    Configuration menu
    Copy the full SHA
    ae00448 View commit details
    Browse the repository at this point in the history
  9. README: Improvements based on some FAQ

    - Apply formatting to both WINDOWS.md and README.md
    - Add link from README to new Status Reference wiki page
    - Add clarifications about multi-harvester setup monitoring
    - Add link to disappearing harvester issue on WINDOWS (log rotation)
    martomi committed May 24, 2021
    Configuration menu
    Copy the full SHA
    691d766 View commit details
    Browse the repository at this point in the history
  10. DailyStats: Add configurable frequency

    Closes martomi#69
    
    Add option to have daily notifications with higher frequency than every
    24 hours.
    martomi committed May 24, 2021
    Configuration menu
    Copy the full SHA
    9e84ef2 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    450c277 View commit details
    Browse the repository at this point in the history
  12. Test case for duplicate signage point

    ctrlaltdel authored and martomi committed May 24, 2021
    Configuration menu
    Copy the full SHA
    ff4c2e3 View commit details
    Browse the repository at this point in the history
  13. SkippedSignagePoints: Handle repeated reception of same SP

    Fixes to pass tests submitted in martomi#169
    
    Closes martomi#170
    
    This is also backwards compatible with all existing tests.
    
    Do not reset previous SP so that we can keep track of the latest valid
    SP and correctly ignore any duplicates.
    martomi committed May 24, 2021
    Configuration menu
    Copy the full SHA
    0ab05c6 View commit details
    Browse the repository at this point in the history
  14. SkippedSignagePoints: No notifications for individual skips

    Closes: martomi#145
    
    Fully remove notifications for individual skips. These are going to be
    shown in the logs and in the daily summaries. Bigger gaps in signage
    points are still going to trigger immediate notifications.
    martomi committed May 24, 2021
    Configuration menu
    Copy the full SHA
    5a7d9aa View commit details
    Browse the repository at this point in the history

Commits on May 25, 2021

  1. CI Workflow: Simplify black check (martomi#188)

    The auto-black functionality doesn't work when opening a PR from a fork.
    pieterhelsen authored May 25, 2021
    Configuration menu
    Copy the full SHA
    cb32324 View commit details
    Browse the repository at this point in the history
  2. Add automated launching for Windows (martomi#91)

    * Add convenient launch script for Windows
    * move platform-specific files to separate dir and automate pathing
    fiveangle authored May 25, 2021
    Configuration menu
    Copy the full SHA
    ef14eeb View commit details
    Browse the repository at this point in the history
  3. Version: Catch possible exceptions

    Exception might happen if chiadog was installed without using git.
    martomi committed May 25, 2021
    Configuration menu
    Copy the full SHA
    25d4c87 View commit details
    Browse the repository at this point in the history
  4. CHANGELOG: Add version 0.6.0

    martomi committed May 25, 2021
    Configuration menu
    Copy the full SHA
    e80b572 View commit details
    Browse the repository at this point in the history

Commits on May 26, 2021

  1. Fix install script package checks

    Removes the return statement that always causes the packages
    check to fail.
    
    Recognises removed packages should be installed again.
    bradclow authored and martomi committed May 26, 2021
    Configuration menu
    Copy the full SHA
    ec73a98 View commit details
    Browse the repository at this point in the history

Commits on May 27, 2021

  1. Configuration menu
    Copy the full SHA
    51e1b5e View commit details
    Browse the repository at this point in the history

Commits on Jun 1, 2021

  1. Bugfix: Remove corrupt pygtail offset (martomi#214)

    * Fix corrupt offset file
    pieterhelsen authored Jun 1, 2021
    Configuration menu
    Copy the full SHA
    6096c75 View commit details
    Browse the repository at this point in the history

Commits on Jun 5, 2021

  1. Configuration menu
    Copy the full SHA
    e72a7ec View commit details
    Browse the repository at this point in the history

Commits on Jun 16, 2021

  1. Configuration menu
    Copy the full SHA
    9fb7934 View commit details
    Browse the repository at this point in the history

Commits on Jun 23, 2021

  1. Configuration menu
    Copy the full SHA
    4cbeae8 View commit details
    Browse the repository at this point in the history

Commits on Jul 9, 2021

  1. Configuration menu
    Copy the full SHA
    92fea7b View commit details
    Browse the repository at this point in the history

Commits on Jul 14, 2021

  1. Configuration menu
    Copy the full SHA
    5eb8dcf View commit details
    Browse the repository at this point in the history
  2. Fix formatting and typing errors

    Introduced from some PRs to dev branch which didn't pass the checks.
    martomi committed Jul 14, 2021
    Configuration menu
    Copy the full SHA
    7266bee View commit details
    Browse the repository at this point in the history
  3. CHANGELOG: Add version 0.6.1

    martomi committed Jul 14, 2021
    Configuration menu
    Copy the full SHA
    fd9a66b View commit details
    Browse the repository at this point in the history

Commits on Jul 15, 2021

  1. Update log offset unlink for compatibility with Python 3.7 (martomi#265)

    missing_ok was added in Python 3.8.
    Replaced with path.exists() check prior to removal
    
    https://docs.python.org/3/library/pathlib.html#pathlib.Path.unlink
    pieterhelsen authored Jul 15, 2021
    Configuration menu
    Copy the full SHA
    f866fd4 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6eae548 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    e327b41 View commit details
    Browse the repository at this point in the history

Commits on Jul 16, 2021

  1. Integration: Grafana Annotations API (martomi#244)

    Also removed daily_stats and wallet_events check and set these variables to False if not present.
    pieterhelsen authored Jul 16, 2021
    Configuration menu
    Copy the full SHA
    9f03b20 View commit details
    Browse the repository at this point in the history

Commits on Jul 24, 2021

  1. Configuration menu
    Copy the full SHA
    ed67030 View commit details
    Browse the repository at this point in the history

Commits on Jul 29, 2021

  1. Remove unused imports & unnecessary f-string

    These are found by running flake8 as explained in CONTRIBUTING.md
    martomi committed Jul 29, 2021
    Configuration menu
    Copy the full SHA
    9bca66e View commit details
    Browse the repository at this point in the history
  2. CHANGELOG: Add version 0.7.0

    martomi committed Jul 29, 2021
    Configuration menu
    Copy the full SHA
    d1964d4 View commit details
    Browse the repository at this point in the history

Commits on Jan 13, 2022

  1. Automated docker image builds (martomi#323)

    * Inhouse Dockerfile and entrypoint from ajacobson/chiadog-docker
    
    This brings over only only drop dead simple bits that really should live
    with the tool itself.
    
    Major benefits:
    - Can easily build any state of the repo regardless of branch or
      mid-development into a functional image without mucking about with an
      external repo.
    - Faster builds when the source code is already present without an extra
      clone
    
    Minor fixes added as well:
    - entrypoint.sh was missing a shebang
    - Simplified entrypoint running now that the script has a proper
      shabang
    - Simplified logic by switching WORKDIR earlier
    - Add a .dockerignore file to prune dirty state and useless weight from
      the container.
    
    Does not include:
    - Any documentation. Docker is an advanced option in any case but this
      should be added as a followup.
    - Automated Docker builds. Those come in the next commit.
    
    * Automate building of Docker images.
    
    - Images based on the `main` branch will update the `latest` tag.
    - Other branches will be tagged with the branch name and first 6 chars
      of commit hash.
    - Any git tags will tag images as-is, say `v0.7.0` would become: `ghcr.io/martomi/chiadog:v0.7.0`
    
    * Simplify & improve Docker image, change config env to CHIADOG_CONFIG_DIR
    
    - Breaking change for anyone coming from ajacobson/chiadog-docker: The
      config dir env variable is now called CHIADOG_CONFIG_DIR
    - Switch base image to python:3.10-slim, reduced image size
      significantly
    - Dropped manual TZ handling at the container system level, just setting
      env TZ is enough
    - Dropped manual PyNaCL install, requirements pull in the binary wheel
      just fine
    - Simplify entrypoint and use sh for security.
    jinnatar authored Jan 13, 2022
    Configuration menu
    Copy the full SHA
    16b91bb View commit details
    Browse the repository at this point in the history

Commits on Jul 2, 2022

  1. Configuration menu
    Copy the full SHA
    f7056cb View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    67300ad View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    c806d1b View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    db9f64a View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    4c0e52a View commit details
    Browse the repository at this point in the history
  6. Config: Toggle notifications for plot increases and decreases (martom…

    …i#307)
    
    This commits adds new notification for plot increases (e.g connecting HDD) and makes the notifications for increases/decreases configurable via the config for every integration.
    Connor-Knabe authored and martomi committed Jul 2, 2022
    Configuration menu
    Copy the full SHA
    bc87fdf View commit details
    Browse the repository at this point in the history
  7. Add a sandboxed systemd service

    * Add a scripts/linux/chiadog.service systemd example that attempts to run chiadog in a more isolated environment. Create a new limited user each run (making much of the filesystem readonly), and set `.chia/mainnet` folders other than `log` to inaccessible.
    * Move the offset file - previously, the `debug.log.offset` file was kept in the chiadog directory, but when running in a read only filesystem we can't write there. Create a temporary directory when running, and store the offset file there. This also means we no longer need to delete the offset file on startup.
    alexking authored and martomi committed Jul 2, 2022
    Configuration menu
    Copy the full SHA
    5c92cfe View commit details
    Browse the repository at this point in the history
  8. Add ~/.chia_keys to list of InaccessiblePaths in systemd

    Chia is [migrating their keyfiles](https://github.com/Chia-Network/chia-blockchain/wiki/Passphrase-Protected-Chia-Keys-and-Key-Storage-Migration) to `~/.chia_keys`. Block this folder from access in the systemd service.
    alexking authored and martomi committed Jul 2, 2022
    Configuration menu
    Copy the full SHA
    24ebb7c View commit details
    Browse the repository at this point in the history
  9. Add config option to disable SMTP auth for basic postfix setup (marto…

    …mi#314)
    
    Sometimes it is useful to disable SMTP authentication for sending emails. For example, if someone is using a local postfix server, the default install doesn't require/enable auth.
    
    When this new config option is set to enable_smtp_auth: false, the username_smtp and password_smtp config options are ignored.
    unsocial-bleach authored and martomi committed Jul 2, 2022
    Configuration menu
    Copy the full SHA
    c7682b4 View commit details
    Browse the repository at this point in the history
  10. Bump paramiko from 2.7.2 to 2.10.1 (martomi#333)

    Bumps [paramiko](https://github.com/paramiko/paramiko) from 2.7.2 to 2.10.1.
    - [Release notes](https://github.com/paramiko/paramiko/releases)
    - [Changelog](https://github.com/paramiko/paramiko/blob/main/NEWS)
    - [Commits](paramiko/paramiko@2.7.2...2.10.1)
    
    ---
    updated-dependencies:
    - dependency-name: paramiko
      dependency-type: direct:production
    ...
    
    Signed-off-by: dependabot[bot] <[email protected]>
    
    Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
    dependabot[bot] authored and martomi committed Jul 2, 2022
    Configuration menu
    Copy the full SHA
    2ec48c8 View commit details
    Browse the repository at this point in the history
  11. Configuration menu
    Copy the full SHA
    e28f5ef View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    ef1784b View commit details
    Browse the repository at this point in the history
  13. Prepare release 0.7.1 (martomi#338)

    * README: Use official docker image
    
    * CONTRIBUTING: Start using main instead of dev
    
    * CHANGELOG: Add version 0.7.1
    
    * README: Section about systemd service
    martomi committed Jul 2, 2022
    Configuration menu
    Copy the full SHA
    088fb86 View commit details
    Browse the repository at this point in the history

Commits on Jul 4, 2022

  1. Configuration menu
    Copy the full SHA
    d445f9e View commit details
    Browse the repository at this point in the history
  2. Improve wallet parser for chia v1.4.0+

    djerfy authored and martomi committed Jul 4, 2022
    Configuration menu
    Copy the full SHA
    3fb7b13 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    1da0256 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    6eafc65 View commit details
    Browse the repository at this point in the history

Commits on Aug 19, 2022

  1. Configuration menu
    Copy the full SHA
    682026e View commit details
    Browse the repository at this point in the history

Commits on Aug 26, 2022

  1. Configuration menu
    Copy the full SHA
    3e93a75 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    28a4dd4 View commit details
    Browse the repository at this point in the history

Commits on Nov 2, 2022

  1. Configuration menu
    Copy the full SHA
    17cdf1b View commit details
    Browse the repository at this point in the history
  2. CHANGELOG: Add version 0.7.4

    martomi committed Nov 2, 2022
    Configuration menu
    Copy the full SHA
    a3c7a9e View commit details
    Browse the repository at this point in the history

Commits on Nov 7, 2022

  1. Support wallet notification for Chia 1.6.1 (martomi#356)

    * Support wallet notification for Chia 1.6.1
    
    * Reformat list in test_wallet_added_coin_parser.py
    djerfy authored Nov 7, 2022
    Configuration menu
    Copy the full SHA
    8dbdc60 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    fb6d105 View commit details
    Browse the repository at this point in the history

Commits on Jan 18, 2023

  1. Wallet: Omit debug logging of zero mojo transactions. (martomi#362)

    * Omit debug logging of zero mojo transactions.
    
    Since the flow of transactions is constant, logging zero transactions
    makes debug logs very hard to read. Non-zero mojo transactions under the
    set limit are still debug logged.
    
    * Fix typing in keep_alive_monitor init
    jinnatar authored Jan 18, 2023
    Configuration menu
    Copy the full SHA
    207c506 View commit details
    Browse the repository at this point in the history

Commits on Feb 3, 2023

  1. Configuration menu
    Copy the full SHA
    73594e1 View commit details
    Browse the repository at this point in the history

Commits on Feb 4, 2023

  1. Configuration menu
    Copy the full SHA
    c7d9d2a View commit details
    Browse the repository at this point in the history
  2. Implement the confuse library handling in notifiers

    I've tested and verified the following to function:
    - Telegram
    - Pushover
    jinnatar committed Feb 4, 2023
    Configuration menu
    Copy the full SHA
    17617a0 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    04a9a89 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    5047645 View commit details
    Browse the repository at this point in the history

Commits on Feb 5, 2023

  1. Configuration menu
    Copy the full SHA
    63feb53 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    faf590d View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    334e3de View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    58c5d3e View commit details
    Browse the repository at this point in the history
  5. Fix silly confuse import

    jinnatar committed Feb 5, 2023
    Configuration menu
    Copy the full SHA
    e0d4979 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    ceedc4e View commit details
    Browse the repository at this point in the history

Commits on Feb 7, 2023

  1. Configuration menu
    Copy the full SHA
    7ee8d4d View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0d133b8 View commit details
    Browse the repository at this point in the history
  3. Fix handler enable checking

    This ensures the backwards compatibility is still carried forward of
    enabling misconfigured handlers.
    jinnatar committed Feb 7, 2023
    Configuration menu
    Copy the full SHA
    d12b99a View commit details
    Browse the repository at this point in the history