How to allow OG admins to view private groups?
After spending some time in the debugger, I would say this is a flaw in OG.

Users allowed to administer OG permissions should be granted access to view any group.
Solution: patched og_node_access() in og.module:490

patch format:

--- og.module
+++ og.module
@@ -490,6 +490,11 @@ function og_og_default_roles() {
 function og_node_access($node, $op, $account) {
   $type = is_string($node) ? $node : (is_array($node) ? $node['type'] : $node-&gt;type);

+  //   Grant access to view any OG group content if the user is allowed to administer OG permissions
+  if ($op == 'view' &amp;&amp; user_access('administer group', $account)) {
+    return NODE_ACCESS_ALLOW;
+  }
+
   if ($op == 'create' &amp;&amp; og_is_group_content_type('node', $type)) {
     // Save some legwork if the user has the core permission and strict node
     // access is not set.


The interesting bit is just this:

  //   Grant access to view any OG group content if the user is allowed to administer OG permissions
  if ($op == 'view' &amp;&amp; user_access('administer group', $account)) {
    return NODE_ACCESS_ALLOW;
  }






The above solved the issue with OG-Admins not being able to view private groups they did not belong to. There was another issue involving views. When for example creating a list of all groups with views, the same problem occurs. In this case, creating a separate view for admins and effectively disabling node access checks for it:


  In the Advanced tab of Views UI under Query settings, select the Disable SQL rewriting checkbox


Various approaches detailed here: https://drupal.org/node/677644