title: Inspect template strings before concatenation
body: <p>I am generating error messages like so:</p>
  
  <pre><code>throw `Do not recognize eventType '${eventType}', recognized events are ${recognizedEvents}.`;
  </code></pre>
  
  <hr>
  
  <p>the problem is recognizedEvents is an object, but it will simply be toString'ed...Anyway, so I could do this:</p>
  
  <pre><code>throw `Do not recognize eventType '${eventType}', recognized events are ${util.inspect(recognizedEvents)}.`;
  </code></pre>
  
  <hr>
  
  <p>the problem is not only that it's more verbose - sometimes I simply forget to call util.inspect(). Even TypeScript let's me compile template literals if an object is passed directly. What is a good technique here to make sure objects get inspected to a reasonable depth in the logs?</p>