# FInding out the name of the method from which I was called?

**URL:** <https://www.ruby-forum.com/t/finding-out-the-name-of-the-method-from-which-i-was-called/159242>\
**Category:** Ruby\
**Created:** [February 2, 2009, 6:18pm UTC](https://www.ruby-forum.com/t/finding-out-the-name-of-the-method-from-which-i-was-called/159242 "2009-02-02T18:18:55Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![pitosalas](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/a4c791/32.png) [@pitosalas](https://www.ruby-forum.com/u/pitosalas)\
**Post date:** [February 2, 2009, 6:18pm UTC](https://www.ruby-forum.com/t/finding-out-the-name-of-the-method-from-which-i-was-called/159242/1 "2009-02-02T18:18:55Z")

</div>

Is there a clever meta programming way for me to do this:

def calling\_method\_1

reporting\_method

end

def reporting\_method\_2

puts “Hey I was just called from #{magic}”

end

and when running reporting\_method\_2 this prints

Hey I was just called from calling\_method\_1

Thanks for any pointers!

– Pito

---

<div class="post-metadata">

**Author:** ![pitosalas](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/a4c791/32.png) [@pitosalas](https://www.ruby-forum.com/u/pitosalas)\
**Post date:** [February 2, 2009, 6:31pm UTC](https://www.ruby-forum.com/t/finding-out-the-name-of-the-method-from-which-i-was-called/159242/2 "2009-02-02T18:31:48Z")

</div>

- R. Pito S. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) [2009-02-03 02:17:29 +0900]:

> puts “Hey I was just called from #{magic}”
> 
> end

def reporting\_method  
caller.shift  
end

Check Kernel#caller.

Jan

---

<div class="post-metadata">

**Author:** ![pitosalas](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/p/a4c791/32.png) [@pitosalas](https://www.ruby-forum.com/u/pitosalas)\
**Post date:** [February 4, 2009, 12:15am UTC](https://www.ruby-forum.com/t/finding-out-the-name-of-the-method-from-which-i-was-called/159242/3 "2009-02-04T00:15:42Z")

</div>

- “R. Pito S.” [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> def reporting\_method\_2
> 
> puts “Hey I was just called from #{magic}”
> 
> end
> 
> and when running reporting\_method\_2 this prints
> 
> Hey I was just called from calling\_method\_1
> 
> Thanks for any pointers!

Kernel#caller  
[http://www.ruby-doc.org/core/classes/Kernel.html#M005955](http://www.ruby-doc.org/core/classes/Kernel.html#M005955)

–  
Lars H.

“If anyone disagrees with anything I say, I am quite prepared not only  
to  
retract it, but also to deny under oath that I ever said it.” -Tom  
Lehrer
