Melatonin did nothing for me.
Benadryl I built up a tolerance.
I take Lunesta. But a lot of nights I wake up several times. If I take Klonopin at night most times it helps me sleep through the night.
I stick to routine. Bed time the same time every night even on weekends. I don't watch TV anymore in bed. I use a fan for white noise. Put some pad on the bottom of the bedroom door to block out light and keep the bathroom door closed to make room as dark as possible.
I'm going to buy a weighted blanket this weekend to see if that helps me stay asleep through the night.