I will just post an example, and just let you know that both of the events work only when your hero is related.
OnDamage involves any damage dealt to you, or from you to somebody else. (thanks finndev)
OnAggro is again only detected against your champion, so you can't check if another minion just aggro-ed another one.
OnDamage(function(senderObj,receiverObj,damage) PrintChat(string.format("<font color='#ff0000'>OnDamage:</font> Sender: [%s] Receiver: [%s] Damage: [%f]",GetObjectName(senderObj),GetObjectName(receiverObj),damage)); end) OnAggro(function(Object,aggroFlag) if aggroFlag == true then PrintChat(string.format("<font color='#ff0000'>OnAggro gained from = %s</font>",GetObjectName(Object))); else PrintChat(string.format("<font color='#00ff00'>OnAggro lost from = %s</font>",GetObjectName(Object))); end end)