Let $ \left(x_n\right)_{n = 1}^\infty $ be a sequence of real numbers defined by the initial value $ x_1 = e^x $ for some $ x \in \mathbb{R} $ and the relationship $ x_{n+1} = e^{x^{x_n}} $, such that $ x_2 = e^{x^{e^{x}}} $ and so forth.
Hence, find all $ x $ such that $ \lim\limits_{n \to \infty} x_n = 2 $
So we should be taking the root of both sides, would that be the approach to solve this problem?
If you define $f_x(y) = y^{e^x}$, then you are asking for a real number $x$ such that $$ \lim_{n \to \infty} f_x^n(e^x) = 2, $$ where $f_x^n(e^x)$ means $f_x(f_x(\dots(f_x(e^x))\dots))$ and the function is applied $n$ times. Note that if such a number existed, then we would have $$ a \overset{def}{=} \lim_{n \to \infty} f_x^n(e^x) = \lim_{n \to \infty} f_x^{n+1}(e^x) = f_x \left( \lim_{n \to \infty} f_x^n(e^x) \right) = f_x(a), $$ because $f_x$ is a continuous function, hence $a = a^{e^x}$ and then either $e^x = 1$, which means $x = 0$ (and this is not a solution to your problem), or $e^x \neq 1$ and $a^{e^x - 1} = 0$, hence $a = 0 \neq 2$ (which is again not a solution to your problem). In any case there are no solutions.
The right question to ask is if you iterate the other way around : that is, if you define $g_x(y) = (e^x)^y$ and you consider the equation $$ \lim_{n \to \infty} g_x^n(y) = 2. $$ This has been answered in this solution of mine.
Hope that helps,