There are a couple of ways to do this.
The simplest is probably to use the logo to mask a much larger Gradient Generator, and then pushing the generator off to the side independent from the logo using a Throw behavior.
For a more organic feel, that resembles light moving on the surface of the logo, I would animate the location of the individual colors in the gradient. This can be a little tricky especially if you have a gradient with many color, but with patience you can get nice results.
Start with a good metallic look for your logo (or text) layer - a gradient fill is the easiest way of getting this.
Clone the "logo" (or text) layer.
Apply a Levels filter to it to brighten it up to "shine" level.
Make a thin rectangular mask to cover your logo to whatever width you want for your "shine" - I like to rotate this so the shine is angled rather than straight.
Apply this mask to your brightened Clone layer.
Then animate the X position of the mask so the shine moves across the logo.
You can also add other effects to the cloned layer such as Glow and Dazzle - you can also colorize it if that works for you. You might want to add a Levels filter to your base layer and darken it down it a bit to help the shine stand out.
You can also create additional masks for the same layer to add subsidiary light passes or to make the first one more interesting.
This technique gives you a lot of flexibility.
Hope that helps.
EDIT: I'm not generally a huge fan of the Extrude filter but a very small, subtle amount (i.e. minimal distance value) really helps if you're going for a metallic look.