The DiscordSocketClient and DiscordSocketRestClient share the same backing API client, so the Log events on both clients will be raised from the same API calls. Proxying log events from the DiscordSocketRestClient then means that the Log event the user hooks into will be raised twice for a single log message. Thanks to @TheCasino for noticing this.pull/1312/head