He does not really "boycott" the Olympics, he simply will not attend them in his function as head of state, which anyway is not strictly demanded by protocol. In addition, in his public statement he does not officially state that he will not attend the games because of human right violations by Russia, although one could certainly interpret it this way. Within the current relationship between Germany and Russia, which is neither particularly friendly nor hostile, this is still the strongest statement he can make without causing an affront. In fact, Gauck never officially visited Russia in his function as head of state since his election.