Merge pull request #3146 from BerriAI/litellm_improve_users_pg

[UI]- show user_emails in Users Tab
This commit is contained in:
Ishaan Jaff 2024-04-18 17:34:48 -07:00 • committed by GitHub
commit 0569974a3a
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 18 additions and 4 deletions

View file

@ -1055,9 +1055,21 @@ class PrismaClient:
},
)
else:
response = await self.db.litellm_usertable.find_many( # type: ignore
order={"spend": "desc"}, take=limit, skip=offset
)
# return all users in the table, get their key aliases ordered by spend
sql_query = """
SELECT
u.*,
json_agg(v.key_alias) AS key_aliases
FROM
"LiteLLM_UserTable" u
LEFT JOIN "LiteLLM_VerificationToken" v ON u.user_id = v.user_id
GROUP BY
u.user_id
ORDER BY u.spend DESC
LIMIT $1
OFFSET $2
"""
response = await self.db.query_raw(sql_query, limit, offset)
return response
elif table_name == "spend":
verbose_proxy_logger.debug(

View file

@ -158,6 +158,7 @@ const ViewUserDashboard: React.FC<ViewUserDashboardProps> = ({
<TableHead>
<TableRow>
<TableHeaderCell>User ID</TableHeaderCell>
<TableHeaderCell>User Email</TableHeaderCell>
<TableHeaderCell>User Role</TableHeaderCell>
<TableHeaderCell>User Models</TableHeaderCell>
<TableHeaderCell>User Spend ($ USD)</TableHeaderCell>
@ -168,8 +169,9 @@ const ViewUserDashboard: React.FC<ViewUserDashboardProps> = ({
{userData.map((user: any) => (
<TableRow key={user.user_id}>
<TableCell>{user.user_id}</TableCell>
<TableCell>{user.user_email}</TableCell>
<TableCell>
{user.user_role ? user.user_role : "app_owner"}
{user.user_role ? user.user_role : ""}
</TableCell>
<TableCell>
{user.models && user.models.length > 0