Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1j2MJj-0007YM-67 for pgsql-admin@arkaria.postgresql.org; Thu, 13 Feb 2020 21:46:39 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1j2MJh-0005oL-3J for pgsql-admin@arkaria.postgresql.org; Thu, 13 Feb 2020 21:46:37 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1j2MJg-0005oD-Nc for pgsql-admin@lists.postgresql.org; Thu, 13 Feb 2020 21:46:36 +0000 Received: from mail-ua1-x935.google.com ([2607:f8b0:4864:20::935]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1j2MJe-0001tc-5g for pgsql-admin@postgresql.org; Thu, 13 Feb 2020 21:46:36 +0000 Received: by mail-ua1-x935.google.com with SMTP id y3so2858773uae.3 for ; Thu, 13 Feb 2020 13:46:34 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=to:from:subject:message-id:date:user-agent:mime-version :content-transfer-encoding:content-language; bh=0tz4vxUBnxKBy7o1GZw/3IDbNYCl7tuo3g8P2QxwjAg=; b=k1slV0qqaEnW4evLoka4W0SyU7Wb02oon+pSt6L99wLB0W/KADsynGMyfW7Z1CT4eD 54qzBB7DCKfKZzVjF422gBITQTZ7nV+iu5ke0kyx+p6nLUHbDZHUQFhlmhhJVUfcuI6c SDKEnyjsLwi5LW7KTEkuFlHAAAppAnxJo6sMY8XBq+e4ilUoDELT7JyfiX2gcaVCQgo3 +y9x7Xt+ElugRlCZr3XRkEYNlU94YlxjhO1cUzypLAowL2U3qzmPLDb1lI7KEez7mZvX i6s8NiUg4rXeqR1GaL7/rdOijsp8XesyEwK/V3dKS762nyTMtAjpvcILaxYm8zMR7fWK m8Sg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:to:from:subject:message-id:date:user-agent :mime-version:content-transfer-encoding:content-language; bh=0tz4vxUBnxKBy7o1GZw/3IDbNYCl7tuo3g8P2QxwjAg=; b=o4TeqCcSWKGQwaxbEcEqoxfS59XkIiSDnFQuITzGUS6ZzS1jtRVZD4ZvLa8Hf6lFtF KwR0P+E++dulnCAbzIlrmuBVDgZYeTn/SVE6kWilkRfEIG0ogV6X4vfxmG4KICVhoWbA DYS85p5GDTr1pcno7nfuGcBH1Pire2+0A3H2PNmrx/aFDgwz4kRiZNMdAy7ktgVX+aFS /xVKguNYwLsVoBknb/o+Z/SmQsAUlieqI43TBCA5Ctss+shxRYSaYYIs9yS8ObyYC6ZR 5T09oYPr5YjGld0PIB/2AkJy5+MPI5UBYjGqMyQZ8hlqgOpBgldZlut5Q96+jkyEAuM7 EVhA== X-Gm-Message-State: APjAAAV3kho7cqzxERC0uVoh57pnqBBfaWZFiKpkkYKjsRlB58gJGAl3 ZFV/HlwoNE9a8Rh8n7snSlh3Wk5e X-Google-Smtp-Source: APXvYqx3M8TNX+ZVyg6g0rfrXDEFayqXsaicZlcfYx7wMoJlWqesimazxFAyn+lDYopL4J/SZmqhmQ== X-Received: by 2002:ab0:1d03:: with SMTP id j3mr11047538uak.6.1581630392622; Thu, 13 Feb 2020 13:46:32 -0800 (PST) Received: from dev.beauqueue.com (c-65-34-174-126.hsd1.fl.comcast.net. [65.34.174.126]) by smtp.gmail.com with ESMTPSA id j29sm1423548uab.0.2020.02.13.13.46.31 for (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Thu, 13 Feb 2020 13:46:32 -0800 (PST) To: pgsql-admin@postgresql.org From: Jacque Subject: creative work-arounds to obtain auto_explain's benefits for non-superuser Message-ID: <42f470b5-8ee7-d3f8-320a-820c12329e63@gmail.com> Date: Thu, 13 Feb 2020 16:46:16 -0500 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:68.0) Gecko/20100101 Thunderbird/68.3.1 MIME-Version: 1.0 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit Content-Language: en-US List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk I gotta admit.   The logging of auto_explain is an embarrassment of riches. But most operational work is not done under the superuser role but one with the lowest opportunity risk of compromise.    I'd like to be embarrassed by an operator role.   Any Mcgeyors out there with ideas to be thus embarrased? Honestly, the only solution I've come up with is to duplicate every non-superuser SQL object in a superuser-ONLY schema and have the super user  perform the same SQL as the operator role (perhaps on alternate days).   Then I could configure that superuser work with all the auto_explain.* settings I could ever want.   As I write this, its clear to me that an extension called "Rogue" is the perfect name that could excise the essential abilities of an extension without obtaining full superuser powers, eh... ur privaledges.   God bless my C if he deems to grant me that mission.