sapling/build/fbcode_builder/manifests/fbzmq
Yixian Jiang 19472ea493 Remove dependency on fbzmq::ResourceMonitor & sigar
Summary:
Replace the methods to get CPU and memory usage statistics:
- For the memory: use `VmRSS` of `/proc/[pid]/status`: http://man7.org/linux/man-pages/man5/proc.5.html
- For the CPU%: calculate the process is occupied how much percentage of the CPU time, use `getrusage()`: http://man7.org/linux/man-pages/man2/getrusage.2.html
   - Implemented like the sigar: https://our.intern.facebook.com/intern/diffusion/FBS/browse/master/third-party/sigar/src/sigar.c?commit=4f945812675131ea64cb3d143350b1414f34a351&lines=111-169
  - Formula:
    - CPU% = `process used time` during the period / `time period` * 100
    -  `time period` = current query timestamp - last query timestamp
    - `process used time` = current `process total time` - last query `process total time`
    - `process total time` = CPU time used in user mode + CPU time used in system mode // get from the API `ru_utime` and `ru_stime`

Remove the `fbzmq::ResourceMonitor` and `sigar`:
- Change and rename the UT
  - `ResourceMonitorTest.cpp` -> `SystemMetricsTest.cpp`
  - `ResourceMonitor` -> `SystemMetricsTest` in `openr/tests/OpenrSystemTest.cpp`
- Remove `ResourceMonitor` code and dependency for `Watchdog` and `ZmqMonitor`
- Remove `sigar` dependency used in building

Reviewed By: saifhhasan

Differential Revision: D20049944

fbshipit-source-id: 00b90c8558dc5f0fb18cc31a09b9666a47b096fe
2020-03-04 16:37:28 -08:00

30 lines
479 B
Plaintext

[manifest]
name = fbzmq
fbsource_path = facebook/fbzmq
shipit_project = fbzmq
shipit_fbcode_builder = true
[git]
repo_url = https://github.com/facebook/fbzmq.git
[build.os=linux]
builder = cmake
[build.not(os=linux)]
# boost.fiber is required and that is not available on macos.
# libzmq doesn't currently build on windows.
builder = nop
[dependencies]
boost
folly
fbthrift
googletest
libzmq
[shipit.pathmap]
fbcode/fbzmq = fbzmq
fbcode/fbzmq/public_tld = .
[shipit.strip]