Skip to content

Commit 3770af1

Browse files
committed
fixed issue with logging and added filters for userID and activity
1 parent 0f0b9d9 commit 3770af1

File tree

6 files changed

+54
-16
lines changed

6 files changed

+54
-16
lines changed

modules/AdministrationGUI/src/main/java/org/janelia/workstation/admin/RetrieveLogsPanel.java

Lines changed: 37 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -93,15 +93,44 @@ private void setupUI() {
9393
constraints.gridy = 1;
9494
contentPanel.add(neuronNameTextField, constraints);
9595

96+
// Activity filter
97+
final JLabel activityLabel = new JLabel("Activity");
98+
final JComboBox<TmOperation.Activity> activityComboBox = new JComboBox<>(
99+
TmOperation.Activity.values()); // assuming Activity is an enum in TmOperation
100+
activityComboBox.insertItemAt(null, 0); // allow 'no filter'
101+
activityComboBox.setSelectedIndex(0);
102+
103+
constraints.gridx = 0;
104+
constraints.gridy = 2;
105+
contentPanel.add(activityLabel, constraints);
106+
constraints.gridx = 1;
107+
constraints.gridy = 2;
108+
contentPanel.add(activityComboBox, constraints);
109+
110+
// UserID filter
111+
final JLabel userIdLabel = new JLabel("User ID");
112+
final JTextField userIdTextField = new JTextField();
113+
userIdTextField.setText("");
114+
userIdTextField.setEditable(true);
115+
userIdTextField.setFocusable(true);
116+
117+
constraints.gridx = 0;
118+
constraints.gridy = 3;
119+
contentPanel.add(userIdLabel, constraints);
120+
constraints.gridx = 1;
121+
constraints.gridy = 3;
122+
contentPanel.add(userIdTextField, constraints);
123+
124+
96125
File defaultFile = Utils.getOutputFile(System.getProperty("user.home"), "log_results", "csv");
97126
final JTextField fileOutputLocation = new JTextField();
98127
fileOutputLocation.setText(defaultFile.getAbsolutePath());
99128
JButton outputButton = new JButton("Choose Export Location");
100129
constraints.gridx = 1;
101-
constraints.gridy = 2;
130+
constraints.gridy = 4;
102131
contentPanel.add(fileOutputLocation, constraints);
103132
constraints.gridx = 0;
104-
constraints.gridy = 2;
133+
constraints.gridy = 4;
105134
contentPanel.add(outputButton, constraints);
106135

107136
add(contentPanel, BorderLayout.CENTER);
@@ -134,11 +163,13 @@ public void actionPerformed(ActionEvent ae) {
134163
TiledMicroscopeDomainMgr domainMgr = TiledMicroscopeDomainMgr.getDomainMgr();
135164
String workspaceId = workspaceNameTextField.getText();
136165
String neuronId = neuronNameTextField.getText();
166+
TmOperation.Activity activity = (TmOperation.Activity) activityComboBox.getSelectedItem();
167+
String userId = userIdTextField.getText().isEmpty() ? null : userIdTextField.getText();
168+
137169
Long workspaceId_L =(workspaceId.equals("")?null:Long.parseLong(workspaceId));
138170
Long neuronId_L =(neuronId.equals("")?null:Long.parseLong(neuronId));
139171
List<TmOperation> logs = domainMgr.getOperationLogs(workspaceId_L,
140-
neuronId_L,
141-
null, null, AccessManager.getSubjectKey());
172+
neuronId_L, userId, activity, AccessManager.getSubjectKey());
142173
try {
143174
BufferedWriter writer = new BufferedWriter(new FileWriter(fileOutputLocation.getText()));
144175
for (TmOperation log : logs) {
@@ -161,11 +192,11 @@ public void actionPerformed(ActionEvent ae) {
161192
});
162193

163194
constraints.gridx = 1;
164-
constraints.gridy = 3;
195+
constraints.gridy = 5;
165196
contentPanel.add(okButton, constraints);
166197

167198
constraints.gridx = 1;
168-
constraints.gridy = 4;
199+
constraints.gridy = 6;
169200
contentPanel.add(statusLabel, constraints);
170201
revalidate();
171202
}
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
1-
// 9.23
1+
// 9.23.1
22

33
Horta
4-
* Added support for self-registration for Demo Hortacloud instance
5-
* Expanded event logging for additional user events
4+
* Added filter for userId and activity in search events
5+
* Fixed issue with recording of timestamp and user in event logging

modules/CommonGUI/src/main/resources/org/janelia/workstation/common/release_notes/prev_releases.txt

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,9 @@
1+
// 9.23
2+
3+
Horta
4+
* Added support for self-registration for Demo Hortacloud instance
5+
* Expanded event logging for additional user events
6+
17
// 9.22
28

39
Horta

modules/ViewerController/src/main/java/org/janelia/workstation/controller/TmViewerManager.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,8 @@ public void logOperation (TmOperation.Activity activity, Date timestamp, Long el
6868
workspaceId = modelManager.getCurrentWorkspace().getId();
6969
TmOperation newOperationLog = new TmOperation();
7070
newOperationLog.setActivity(activity);
71-
newOperationLog.setTimestamp(timestamp);
71+
newOperationLog.setTimestamp(new Date());
72+
newOperationLog.setUser(AccessManager.getSubjectKey() );
7273
newOperationLog.setElapsedTime(elapsedTime);
7374
newOperationLog.setWorkspaceId(workspaceId);
7475
if (modelManager.getCurrentSelections().getCurrentNeuron()!=null)

modules/ViewerController/src/main/java/org/janelia/workstation/controller/access/TiledMicroscopeDomainMgr.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -159,11 +159,11 @@ public List<TmWorkspaceInfo> getLargestWorkspaces () {
159159
return client.getLargestWorkspaces(AccessManager.getSubjectKey());
160160
}
161161

162-
public List<TmOperation> getOperationLogs (Long workspaceId, Long neuronId, Date startTime, Date endTime,
162+
public List<TmOperation> getOperationLogs (Long workspaceId, Long neuronId, String userId, TmOperation.Activity activity,
163163
String subjectKey) {
164164
LOG.debug("getOperationLogs(workspaceId={}, neuronId={}, startTime={}, endTime={})",
165-
workspaceId, neuronId, startTime, endTime);
166-
return client.getOperationLogs(workspaceId, neuronId, startTime, endTime, subjectKey);
165+
workspaceId, neuronId, userId, activity);
166+
return client.getOperationLogs(workspaceId, neuronId, userId, activity, subjectKey);
167167
}
168168

169169
public void createOperationLog (TmOperation operation, String subjectKey) {

modules/ViewerController/src/main/java/org/janelia/workstation/controller/access/TiledMicroscopeRestClient.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -141,14 +141,14 @@ public List<TmWorkspaceInfo> getLargestWorkspaces(String subjectKey ) {
141141
}
142142

143143
public List<TmOperation> getOperationLogs(Long workspaceId, Long neuronId,
144-
Date startTime, Date endTime,
144+
String userId, TmOperation.Activity activity,
145145
String subjectKey ) {
146146
WebTarget target = getMouselightDataEndpoint("/operation/log/search")
147147
.queryParam("username", subjectKey)
148148
.queryParam("workspaceId", workspaceId)
149149
.queryParam("neuronId", neuronId)
150-
.queryParam("timestamp", startTime)
151-
.queryParam("timestamp", endTime);
150+
.queryParam("userId", userId)
151+
.queryParam("activity", activity);
152152
Response response = target
153153
.request("application/json")
154154
.get();

0 commit comments

Comments
 (0)