Skip to content
Snippets Groups Projects
  • George Joseph's avatar
    66916067
    ari: Implement 'debug all' and request/response logging · 66916067
    George Joseph authored
    The 'ari set debug' command has been enhanced to accept 'all' as an
    application name.  This allows dumping of all apps even if an app
    hasn't registered yet.  To accomplish this, a new global_debug global
    variable was added to res/stasis/app.c and new APIs were added to
    set and query the value.
    
    'ari set debug' now displays requests and responses as well as events.
    This required refactoring the existing debug code.
    
    * The implementation for 'ari set debug' was moved from stasis/cli.{c,h}
      to ari/cli.{c,h}, and stasis/cli.{c,h} were deleted.
    * In order to print the body of incoming requests even if a request
      failed, the consumption of the body was moved from the ari stubs
      to ast_ari_callback in res_ari.c and the moustache templates were
      then regenerated.  The body is now passed to ast_ari_invoke and then
      on to the handlers.  This results in code savings since that template
      was inserted multiple times into all the stubs.
    
    An additional change was made to the ao2_str_container implementation
    to add partial key searching and a sort function.  The existing cli
    code assumed it was already there when it wasn't so the tab completion
    was never working.
    
    Change-Id: Ief936f747ce47f1fb14035fbe61152cf766406bf
    (cherry picked from commit 1d890874)
    66916067
    History
    ari: Implement 'debug all' and request/response logging
    George Joseph authored
    The 'ari set debug' command has been enhanced to accept 'all' as an
    application name.  This allows dumping of all apps even if an app
    hasn't registered yet.  To accomplish this, a new global_debug global
    variable was added to res/stasis/app.c and new APIs were added to
    set and query the value.
    
    'ari set debug' now displays requests and responses as well as events.
    This required refactoring the existing debug code.
    
    * The implementation for 'ari set debug' was moved from stasis/cli.{c,h}
      to ari/cli.{c,h}, and stasis/cli.{c,h} were deleted.
    * In order to print the body of incoming requests even if a request
      failed, the consumption of the body was moved from the ari stubs
      to ast_ari_callback in res_ari.c and the moustache templates were
      then regenerated.  The body is now passed to ast_ari_invoke and then
      on to the handlers.  This results in code savings since that template
      was inserted multiple times into all the stubs.
    
    An additional change was made to the ao2_str_container implementation
    to add partial key searching and a sort function.  The existing cli
    code assumed it was already there when it wasn't so the tab completion
    was never working.
    
    Change-Id: Ief936f747ce47f1fb14035fbe61152cf766406bf
    (cherry picked from commit 1d890874)
To find the state of this project's repository at the time of any of these versions, check out the tags.