The purpose of a branch cut or cuts is take a multivalued function $f(z)$ into a single analytic branch of $f(z)$. In the example of $f(z) = \log(z)$, lets consider moving around $z = 0$, from a point on the unit circle. Now, the branch point in this case is at $z=0$.
Let $z = e^{i\theta}$. Now if we start at $z = 1$ so $\theta = 0$, then $f(1) = \log(1) = 0$. Let's traverse around $z = 0$ by $2\pi$; that is, $z = e^{2\pi i}$.
$$
f(e^{2\pi i}) = \log(e^{2\pi i}) = \log(1) + 2\pi i = 2\pi i
$$
Therefore, as we encircle $z = 0$ by $f(1) = 0\mapsto f(e^{2\pi i}) = 2\pi$. Therefore, $f(z)$ is multivalued. In order to prevent this, we must stop the wrapping around $z = 0$ by a full revolution or $2\pi$. In my encounter, the principal value is general defined as $\theta\in(-\pi, \pi]$ but I have seen it defined as $\theta\in(0, 2\pi]$. If we use the first definition of principal value, we would define our branch cut as $(-\infty, 0]$ as you did in your question but we could also define it as $[0, \infty)$ or any ray zero to infinity.