Adding runtime parameters to status hook
- Dominant language
- Go
- Stars
- 13.6k
- Forks
- 1.4k
- Avg merge
- 2h 31m
- Merged PRs (30d)
- 4
Description
Currently, the `gh-ost-on-status` hook prints the progress status line that looks like this:
```
Copy: 1699250189/1690108499 100.5%; Applied: 31743968; Backlog: 7/100; Time: 161h16m29s(total), 161h16m29s(copy); streamer: mysql-bin-changelog.007837:11033033; ETA: Due
```
When we issue the `status` command via the control socket, we get much more information:
```
# Migrating `dbname`.`tablename`; Ghost table is `dbname`.`_tablename_gho`
# Migrating hostname:3306; inspecting hostname:3306; executing on dbname-tablename.tablename-1-test-on-replica-84g2c
# Migration started at Tue Sep 20 15:59:38 +0000 2016
# chunk-size: 10000; max-lag-millis: 1500ms; max-load: Threads_connected=100; critical-load: ; nice-ratio: 1.000000
# throttle-additional-flag-file: /tmp/gh-ost.throttle
# postpone-cut-over-flag-file: /postpone [set]
# Serving on unix socket: /tmp/gh-ost.dbname.tablename.sock
# Serving on TCP port: 8000
Copy: 0/1251261483 0.0%; Applied: 0; Backlog: 8/100; Time: 34s(total), 0s(copy); streamer: mysql-bin-changelog.003710:88661; State: migrating; ETA: N/A
```
It would be useful to us to have the runtime params like `chunk-size`, `nice-ratio`, etc, available in the status hook, so we can track what the settings were at each point in the process. We're using this to submit metrics to our monitoring systems.
I'd be happy to submit a PR once we agree on the format.
Contributor guide
Assessment
This issue has not been assessed yet.