Cream butter and sugar together until light and fluffy. Beat in the eggs, sour cream, and vanilla. Mix in 1 cup flour, salt and baking soda. Add remaining flour a little at a time and mix until combined.
Empty dough onto plastic wrap, shape into a disk, wrap up, and refrigerate for at least 1 hour.
Preheat oven to 350 degrees F.
Divide the dough in two portions. Take one portion and roll out to about 1/4 inch thick making a a rectangle of about 6x16 inches.
For the Filling:
Mix the filling ingredients together and spread half of it over rolled out dough.
Starting with a long edge, roll the dough into a log. Cut into 1/2 to 3/4 inch pieces using string or floss (scoot the string up under the log of dough, cross the ends, and pull tight to cut through the dough). You should get about 18 cookies per log. Repeat with remaining dough.
Place on baking sheet 2 inches apart and bake for 10-12 minutes. Cookies will still be pale. Cool on pan for 2 minutes and then transfer to a wire rack.
For the Glaze:
Beat cream cheese and butter together until smooth. Mix in the sugar, vanilla, and milk. Dip the tops of cookies into glaze. Let the glaze set on the cookie before storing in an airtight container.