add ruby observer