Very slow query, not sure if MySQL index is being used
entries needs INDEX(valid, tenent_id)
users needs INDEX(active, user_id)

More discussion (Index Cookbook).

More specifics

LEFT probably prevents the optimizer from picking which table to start with.  Assuming the LEFT is important, let's break the query in two:

FROM entries WHERE e.tenant_id=? AND e.valid=1


The link above explains that the optimal index starts with anything with '=', so (tenant_id, valid) in any order.  (I suggested one of them.)

Then it moves on to the other table:

LEFT JOIN users u
    ON u.user_id = ...
WHERE u.active=1


Hence, (active, user_id) in any order.

(Sorry, I need to augment the Cookbook with more discussion of JOIN.)

If you could get rid of LEFT, then a different set of indexes might be useful:

(active)
(valid, user_id, tenant_id) -- in any order


Having both pairs of indexes would let the optimizer pick which is better.  However, some consolidation is desirable (again, see the link).  These two would suffice for either table order.  Now the column order is important:

(active, user_id)   -- also handles (active)
(valid, tenant_id, user_id)  -- also handles (valid, tenent_id)


More on your title question of "not sure if index is being used".  In the EXPLAIN, NULL and 116710 imply that it is not.  But index and Using index imply that it is.  The tie-breaker is Using join buffer (Block Nested Loop) which says that it is loading the index into RAM to use it.  (This is a case where join_buffer_size matters.)

The 4-column index you had was somewhat useful, but it


did not have all the needed columns (active) to be covering
had an extra column (group_id)
was in a sub-optimal order: the extra column came before the all the needed columns, so valid was not as useful as it could be.