Love them. 5k, 10k etc... They get people who have running in common to congregate. You run faster when you're running in a herd and are motivated to chase that person who is running in front of you. You do spend money which generates economic activity, but you're not buying some plasticky thing mad in China. The one pet peeve I have is that obligatory medal that they hand out at the end of the race. What a waste of metal.
Hey, I keep all my marathon medals. I don't take them at lesser distance. Once of the runs that gets money for the food bank lets you opt out of the t-shirt. Unfortunately many of these runs are business instead of charity. I typically run slower in 5Ks than my pace, too many people to go through. Race for the cure has gotten too big for me, last year will probably be the last for me on that one.