This is an automated email from the ASF dual-hosted git repository.

sebawagner pushed a commit to branch 
feature/OPENMEETINGS-2567-investigate-performance-monitoring
in repository https://gitbox.apache.org/repos/asf/openmeetings.git


The following commit(s) were added to 
refs/heads/feature/OPENMEETINGS-2567-investigate-performance-monitoring by this 
push:
     new 5d507e5  OPENMEETINGS-2567 ADd some logs and add some indexes.
5d507e5 is described below

commit 5d507e5ab5e2fd95508cce048632f55c5ca7446c
Author: Sebastian Wagner <[email protected]>
AuthorDate: Fri Feb 5 14:03:40 2021 +1300

    OPENMEETINGS-2567 ADd some logs and add some indexes.
---
 .../main/java/org/apache/openmeetings/db/dao/user/UserDao.java   | 9 ++++++++-
 .../java/org/apache/openmeetings/db/entity/user/Address.java     | 5 ++++-
 .../main/java/org/apache/openmeetings/db/entity/user/User.java   | 2 ++
 .../main/java/org/apache/openmeetings/web/room/RoomPanel.java    | 4 ++++
 4 files changed, 18 insertions(+), 2 deletions(-)

diff --git 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
index cc4bdd9..7d7313e 100644
--- 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
+++ 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/dao/user/UserDao.java
@@ -580,6 +580,7 @@ public class UserDao implements 
IGroupAdminDataProviderDao<User> {
                return getUserProfileQuery(Long.class, userId, text, offers, 
search, null, false).getSingleResult();
        }
 
+       @TimedDatabase
        public User getExternalUser(String extId, String extType) {
                return single(fillLazy(em
                                , oem -> 
oem.createNamedQuery("getExternalUser", User.class)
@@ -623,6 +624,7 @@ public class UserDao implements 
IGroupAdminDataProviderDao<User> {
         */
        @TimedDatabase
        public User login(String userOrEmail, String userpass) throws 
OmException {
+               long start = System.currentTimeMillis();
                List<User> users = em.createNamedQuery("getUserByLoginOrEmail", 
User.class)
                                .setParameter("userOrEmail", userOrEmail)
                                .setParameter("type", Type.USER)
@@ -652,7 +654,12 @@ public class UserDao implements 
IGroupAdminDataProviderDao<User> {
                }
 
                u.setLastlogin(new Date());
-               return update(u, u.getId());
+               User updatedUser = update(u, u.getId());
+
+               long finish = System.currentTimeMillis();
+               long timeElapsed = finish - start;
+               log.info("login - Elapsed time " + timeElapsed);
+               return updatedUser;
        }
 
        public List<User> getByExpiredHash(long ttl) {
diff --git 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/Address.java
 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/Address.java
index bf01604..b60cec8 100644
--- 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/Address.java
+++ 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/Address.java
@@ -23,6 +23,7 @@ import javax.persistence.Entity;
 import javax.persistence.GeneratedValue;
 import javax.persistence.GenerationType;
 import javax.persistence.Id;
+import javax.persistence.Index;
 import javax.persistence.Lob;
 import javax.persistence.Table;
 import javax.xml.bind.annotation.XmlElement;
@@ -32,7 +33,9 @@ import javax.xml.bind.annotation.XmlTransient;
 import org.apache.openmeetings.db.entity.HistoricalEntity;
 
 @Entity
-@Table(name = "address")
+@Table(name = "address", indexes = {
+               @Index(name = "email_idx", columnList = "email")
+})
 @XmlRootElement(name = "address")
 public class Address extends HistoricalEntity {
        private static final long serialVersionUID = 1L;
diff --git 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/User.java
 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/User.java
index a39b8c4..5e8caf8 100644
--- 
a/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/User.java
+++ 
b/openmeetings-db/src/main/java/org/apache/openmeetings/db/entity/user/User.java
@@ -121,6 +121,8 @@ import org.apache.wicket.util.string.Strings;
                @Index(name = "login_idx", columnList = "login")
                , @Index(name = "lastname_idx", columnList = "lastname")
                , @Index(name = "firstname_idx", columnList = "firstname")
+               , @Index(name = "type_idx", columnList = "type")
+               , @Index(name = "external_idx", columnList = "external_id")
 })
 @XmlRootElement(name = USER_NODE)
 public class User extends HistoricalEntity {
diff --git 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
index 43af947..55e941c 100644
--- 
a/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
+++ 
b/openmeetings-web/src/main/java/org/apache/openmeetings/web/room/RoomPanel.java
@@ -142,6 +142,7 @@ public class RoomPanel extends BasePanel {
 
                @Override
                protected void respond(AjaxRequestTarget target) {
+                       long start = System.currentTimeMillis();
                        Histogram.Timer timer = PrometheusUtil.getHistogram() //
                                        .labels("RoomPanel", "roomEnter", 
"application").startTimer();
                        try {
@@ -185,6 +186,7 @@ public class RoomPanel extends BasePanel {
                                }
                                wb.update(target);
                        } finally {
+                               log.info("RoomEnter roomEnter - Elapsed time " 
+ (System.currentTimeMillis() - start));
                                timer.observeDuration();
                        }
                }
@@ -278,6 +280,7 @@ public class RoomPanel extends BasePanel {
 
        @Override
        protected void onInitialize() {
+               long start = System.currentTimeMillis();
                Histogram.Timer timer = PrometheusUtil.getHistogram() //
                                .labels("RoomPanel", "onInitialize", 
"application").startTimer();
                try {
@@ -438,6 +441,7 @@ public class RoomPanel extends BasePanel {
                                        }
                                });
                } finally {
+                       log.info("RoomEnter onInitialise - Elapsed time " + 
(System.currentTimeMillis() - start));
                        timer.observeDuration();
                }
        }

Reply via email to