What's the best way to avoid messing up the mesh with Bevel modifier?

Is there a way to have perfect bevel on a mesh like the following?
(this mesh is the product of 2 boolean operations with 3 cylinders).


bevel.blend (387 KB)

The best way is not to model this shape with booleans.
But with your model remove all the double vertices you have by selecting all vertices and W / remove doubles. Then in edit mode select all vertices except the very centre vertices at both ends of your object, then use Alt+J to convert triangles to quads.
You’ll have a much cleaner mesh that will accept edge bevel weights with your bevel modifier


Thanks! It worked well with applying bevel in angle mode, but when I tried to weight-paint (red) one edge, the bevel didn’t work at all in weight mode. Any hints?