Skip to content

Add --follow to tower apps logs #164

@burakdede

Description

@burakdede

Blocks any network-resilience log-stream severing use cases and normal “tail -f”-like workflows.

Repro

  • tower apps logs --help (no --follow option).
  • tower apps logs -f <app>#<run> (fails with unexpected argument).

Expected

Actual

  • Command only performs a single log fetch.

Sample reproducible job

  • tower run --dir tower-examples/pressure-network -p DURATION_SECS=20 -p INTERVAL_SECS=2 --detached
  • tower apps logs pressure-network#<run>
  • wait ~8s
  • tower apps logs pressure-network#<run>

Sample script

import os
import time

def main():
    duration = int(os.environ.get("DURATION_SECS", "60"))
    interval = float(os.environ.get("INTERVAL_SECS", "1"))
    start = time.time()
    idx = 0
    while True:
        elapsed = time.time() - start
        if elapsed >= duration:
            break
        idx += 1
        print(f"LOG_TICK={idx} elapsed={elapsed:.2f}s")
        time.sleep(interval)
    print("LOG_DONE")

if __name__ == "__main__":
    main()

Sample output

first fetch

  • LOG_TICK=1 elapsed=0.00s
  • LOG_TICK=2 elapsed=2.00s

second fetch, later ticks appear only after re-run

  • LOG_TICK=3 elapsed=4.00s
  • LOG_TICK=4 elapsed=6.00s

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions