HACKERS 1.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. $Id: HACKERS,v 1.3 2008/01/30 12:06:49 dijkstra Exp $
  2. Adding a probe for a new platform
  3. ---------------------------------
  4. Look at similar probes for other platforms and work out what each value
  5. means. Ensure that your probe conveys the same semantics, this allows ppl that
  6. want to monitor several different platform simultaneously to compare probe
  7. measurements.
  8. Places to touch:
  9. - platform/<os>/sm_<name>.c: your probe
  10. - platform/<os>/cons.sh: your checks for system dependencies. Make sure you
  11. check for features, not versions here.
  12. - platform/<os>/platform.h: stream_parg holds stream instance state data that
  13. is platform specific.
  14. Adding a new probe
  15. ------------------
  16. Get your measurement as fast as possible with as little fuss as possible. Ideal
  17. is to get all items that the user might want to query in one gets() and give
  18. symon the readings for a particular item in a get(). This way, all information
  19. submitted by one probe is measured at the same time.
  20. Places to touch:
  21. - lib/data.[ch]: define the new dataformat. MT_YOURSTREAM should be the old
  22. MT_EOF to not break old versions.
  23. - lib/lex.[ch]: define the token for the lexer
  24. - sym[on|ux]/readconf.c: parse the new token
  25. - symux/c_smrrds.sh: add new rrdtool storage format
  26. - platform/stub/sm_<name>.c: insert your stub probe here. Makefile will look
  27. for platform/<os>/sm_<name>.c after that.
  28. - platform/<os>/sm_<name>.c: your probe
  29. - symon/main.c: insert hooks into probe caller table
  30. - symon/symon.8, symux/symux.8: add your token and its internal format to the
  31. manual pages.