@@ -592,7 +592,7 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
592592 ```json
593593
594594 {
595- "message": "1.2.3.4 -> 5.6.7.8 \"GET /test/v1/config/systemfile?args=filename%3Afile_name.log%2Cfilelocation%3A%2Fvar%2Fnslog&format=prometheus HTTP/1.1\" 200 14794 \"-\" \"Prometheus/2.30.0\" \"Time: 65590 microsecs\"",
595+ "message": "1.2.3.4 -> 5.6.7.8 \"GET /test/v1/config/systemfile?REDACTED HTTP/1.1\" 200 14794 \"-\" \"Prometheus/2.30.0\" \"Time: 65590 microsecs\"",
596596 "event": {
597597 "category": [
598598 "network"
@@ -628,9 +628,9 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
628628 "ip": "1.2.3.4"
629629 },
630630 "url": {
631- "original": "/test/v1/config/systemfile?args=filename%3Afile_name.log%2Cfilelocation%3A%2Fvar%2Fnslog&format=prometheus ",
631+ "original": "/test/v1/config/systemfile?REDACTED ",
632632 "path": "/test/v1/config/systemfile",
633- "query": "args=filename%3Afile_name.log%2Cfilelocation%3A%2Fvar%2Fnslog&format=prometheus "
633+ "query": "REDACTED "
634634 },
635635 "user_agent": {
636636 "device": {
@@ -653,7 +653,7 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
653653 ```json
654654
655655 {
656- "message": "1.2.3.4 -> 1.2.3.4 - - [10/Jun/2024:23:07:11 +0530] [1571] \"GET /nitro/v1/config/route6?format=json&sessionid=[FILTERED] HTTP/1.1\" 200 1162 \"-\" \"-\" \"Time: 9797 microsecs\"",
656+ "message": "1.2.3.4 -> 1.2.3.4 - - [10/Jun/2024:23:07:11 +0530] [1571] \"GET /nitro/v1/config/route6?REDACTED HTTP/1.1\" 200 1162 \"-\" \"-\" \"Time: 9797 microsecs\"",
657657 "event": {
658658 "category": [
659659 "network"
@@ -692,9 +692,9 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
692692 "ip": "1.2.3.4"
693693 },
694694 "url": {
695- "original": "/nitro/v1/config/route6?format=json&sessionid=[FILTERED] ",
695+ "original": "/nitro/v1/config/route6?REDACTED ",
696696 "path": "/nitro/v1/config/route6",
697- "query": "format=json&sessionid=[FILTERED] "
697+ "query": "REDACTED "
698698 }
699699 }
700700
@@ -883,7 +883,7 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
883883 ```json
884884
885885 {
886- "message": "\"2023/07/04:09:03:46 ADC 0-PPE-0 : default SSLVPN Message 19695397 0 : \"\"SSLVPN Mux Authorize result is Deny, User <vpn17590 >, Srcip: 1.2.3.4, Dstip: 5.6.7.8, denied_by_policy: SESSPOL_VPN_Remoteadmin\"\"\"",
886+ "message": "\"2023/07/04:09:03:46 ADC 0-PPE-0 : default SSLVPN Message 19695397 0 : \"\"SSLVPN Mux Authorize result is Deny, User <user1 >, Srcip: 1.2.3.4, Dstip: 5.6.7.8, denied_by_policy: SESSPOL_VPN_Remoteadmin\"\"\"",
887887 "event": {
888888 "category": [
889889 "authentication"
@@ -909,7 +909,7 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
909909 "5.6.7.8"
910910 ],
911911 "user": [
912- "vpn17590 "
912+ "user1 "
913913 ]
914914 },
915915 "rule": {
@@ -920,7 +920,7 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
920920 "ip": "1.2.3.4"
921921 },
922922 "user": {
923- "name": "vpn17590 "
923+ "name": "user1 "
924924 }
925925 }
926926
@@ -932,7 +932,7 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
932932 ```json
933933
934934 {
935- "message": "\"2023/07/04:09:03:39 ADC 0-PPE-0 : default SSLVPN NONHTTP_RESOURCEACCESS_DENIED 19695356 0 : Context vpn35939 @91.170.235.67 - SessionId: 1286 - User vpn35939 - Client_ip 1.2.3.4 - Nat_ip 4.3.2.1 - Vserver 192.168.152.11:443 - Source 1.2.3.4:50130 - Destination 5.6.7.8:514 - Total_bytes_send 340 - Total_bytes_recv 0 - Denied_by_policy \"\"AUTHZ_DENY\"\" - Group(s) \"\"vpndsin,vpndsin\"\"\"",
935+ "message": "\"2023/07/04:09:03:39 ADC 0-PPE-0 : default SSLVPN NONHTTP_RESOURCEACCESS_DENIED 19695356 0 : Context user1 @91.170.235.67 - SessionId: 1286 - User user1 - Client_ip 1.2.3.4 - Nat_ip 4.3.2.1 - Vserver 192.168.152.11:443 - Source 1.2.3.4:50130 - Destination 5.6.7.8:514 - Total_bytes_send 340 - Total_bytes_recv 0 - Denied_by_policy \"\"AUTHZ_DENY\"\" - Group(s) \"\"vpndsin,vpndsin\"\"\"",
936936 "event": {
937937 "category": [
938938 "network"
@@ -967,7 +967,7 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
967967 "5.6.7.8"
968968 ],
969969 "user": [
970- "vpn35939 "
970+ "user1 "
971971 ]
972972 },
973973 "rule": {
@@ -982,7 +982,7 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
982982 "port": 50130
983983 },
984984 "user": {
985- "name": "vpn35939 "
985+ "name": "user1 "
986986 }
987987 }
988988
@@ -994,7 +994,7 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
994994 ```json
995995
996996 {
997- "message": "\"12/07/2023:10:58:42 GMT CXA-GAT 0-PPE-0 : default SSLVPN Message 1521206 0 : \"SSO ns_sslvpn_process_sso_conn: user [email protected] clientip 1.2.3.7 request: /Citrix/CITRIXCGDWeb/clients/HTML5Client/resources/images/icon_clipboard.png sso_flags-0 p_flags-0 x_flags-200000 author_hdr_removed-0\"\"", 997+ "message": "\"12/07/2023:10:58:42 GMT CXA-GAT 0-PPE-0 : default SSLVPN Message 1521206 0 : \"SSO ns_sslvpn_process_sso_conn: user [email protected] clientip 1.2.3.4 request: /Citrix/CITRIXCGDWeb/clients/HTML5Client/resources/images/icon_clipboard.png sso_flags-0 p_flags-0 x_flags-200000 author_hdr_removed-0\"\"", 998998 "event": {
999999 "category": [
10001000 "network"
@@ -1007,15 +1007,15 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
10071007 },
10081008 "@timestamp": "2023-12-07T10:58:42Z",
10091009 "client": {
1010- "address": "1.2.3.7 ",
1011- "ip": "1.2.3.7 "
1010+ "address": "1.2.3.4 ",
1011+ "ip": "1.2.3.4 "
10121012 },
10131013 "observer": {
10141014 "name": "CXA-GAT"
10151015 },
10161016 "related": {
10171017 "ip": [
1018- "1.2.3.7 "
1018+ "1.2.3.4 "
10191019 ],
10201020 "user": [
10211021 "john.doe"
@@ -1083,7 +1083,7 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
10831083 ```json
10841084
10851085 {
1086- "message": "12/19/2024:09:40:29 GMT NetscalerCD07_1 0-PPE-0 : default SSLVPN TCPCONNSTAT 40844824 0 : Context tUser @1.2.3.4 - SessionId: 1096160 - User tUser - Client_ip 1.2.3.4 - Nat_ip 5.6.7.8 - Vserver 3.4.5.6:443 - Source 1.2.3.4:59549 - Destination 3.3.3.3:443 - Start_time \"12/19/2024:09:40:29 GMT\" - End_time \"12/19/2024:09:40:29 GMT\" - Duration 00:00:00 - Total_bytes_send 0 - Total_bytes_recv 51251 - Total_compressedbytes_send 0 - Total_compressedbytes_recv 0 - Compression_ratio_send 0.00% - Compression_ratio_recv 0.00% - Access Allowed - Group(s) \"N/A\"",
1086+ "message": "12/19/2024:09:40:29 GMT NetscalerCD07_1 0-PPE-0 : default SSLVPN TCPCONNSTAT 40844824 0 : Context user1 @1.2.3.4 - SessionId: 1096160 - User user1 - Client_ip 1.2.3.4 - Nat_ip 5.6.7.8 - Vserver 3.4.5.6:443 - Source 1.2.3.4:59549 - Destination 3.3.3.3:443 - Start_time \"12/19/2024:09:40:29 GMT\" - End_time \"12/19/2024:09:40:29 GMT\" - Duration 00:00:00 - Total_bytes_send 0 - Total_bytes_recv 51251 - Total_compressedbytes_send 0 - Total_compressedbytes_recv 0 - Compression_ratio_send 0.00% - Compression_ratio_recv 0.00% - Access Allowed - Group(s) \"N/A\"",
10871087 "event": {
10881088 "category": [
10891089 "network"
@@ -1121,7 +1121,7 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
11211121 "3.3.3.3"
11221122 ],
11231123 "user": [
1124- "tUser "
1124+ "user1 "
11251125 ]
11261126 },
11271127 "source": {
@@ -1130,7 +1130,7 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
11301130 "port": 59549
11311131 },
11321132 "user": {
1133- "name": "tUser "
1133+ "name": "user1 "
11341134 }
11351135 }
11361136
@@ -1142,7 +1142,7 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
11421142 ```json
11431143
11441144 {
1145- "message": "12/19/2024:09:40:29 GMT NetscalerCD07_1 0-PPE-0 : default SSLVPN HTTPREQUEST 40844823 0 : Context testuser @1.2.3.4 - SessionId: 1096160 - test.test.test User testuser : Group(s) N/A : Vserver 3.4.5.6:443 - 12/19/2024:09:40:29 GMT : SSO is ON : GET /ttt.jpg - -",
1145+ "message": "12/19/2024:09:40:29 GMT NetscalerCD07_1 0-PPE-0 : default SSLVPN HTTPREQUEST 40844823 0 : Context user1 @1.2.3.4 - SessionId: 1096160 - example.com User user1 : Group(s) N/A : Vserver 3.4.5.6:443 - 12/19/2024:09:40:29 GMT : SSO is ON : GET /ttt.jpg - -",
11461146 "event": {
11471147 "category": [
11481148 "network"
@@ -1175,19 +1175,24 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
11751175 "name": "NetscalerCD07_1"
11761176 },
11771177 "related": {
1178+ "hosts": [
1179+ "example.com"
1180+ ],
11781181 "ip": [
11791182 "1.2.3.4"
11801183 ],
11811184 "user": [
1182- "testuser "
1185+ "user1 "
11831186 ]
11841187 },
11851188 "url": {
1186- "original": "test.test.test",
1187- "path": "/ttt.jpg"
1189+ "domain": "example.com",
1190+ "path": "/ttt.jpg",
1191+ "registered_domain": "example.com",
1192+ "top_level_domain": "com"
11881193 },
11891194 "user": {
1190- "name": "testuser "
1195+ "name": "user1 "
11911196 }
11921197 }
11931198
@@ -1287,6 +1292,111 @@ This section demonstrates how the raw logs will be transformed by our parsers. I
12871292 ```
12881293
12891294
1295+ === "test_sslvpn_log_9.json"
1296+
1297+ ```json
1298+
1299+ {
1300+ "message": "01/28/2026:14:14:14 HOSTNAME 0-PPE-0 : default SSLVPN ICASTART 25487330 0 : [TECHSUPPORT][LAUNCH][TCP][CGP][ICAUUID=11111111111-11111-1111-1111-111111111] Source 2.2.2.2:49692 - Destination 1.1.1.1:2598 - customername - username:domainname user1:example - applicationName Application-Test $S3-56 - startTime \"01/28/2026:14:14:13 \" - connectionId 1111111",
1301+ "event": {
1302+ "category": [
1303+ "network"
1304+ ],
1305+ "code": "ICASTART",
1306+ "dataset": "audit_sslvpn",
1307+ "type": [
1308+ "connection"
1309+ ]
1310+ },
1311+ "@timestamp": "2026-01-28T14:14:14Z",
1312+ "citrix": {
1313+ "adc": {
1314+ "application_name": "Application-Test $S3-56"
1315+ }
1316+ },
1317+ "destination": {
1318+ "address": "1.1.1.1",
1319+ "ip": "1.1.1.1",
1320+ "port": 2598
1321+ },
1322+ "observer": {
1323+ "name": "HOSTNAME"
1324+ },
1325+ "related": {
1326+ "ip": [
1327+ "1.1.1.1",
1328+ "2.2.2.2"
1329+ ],
1330+ "user": [
1331+ "user1"
1332+ ]
1333+ },
1334+ "source": {
1335+ "address": "2.2.2.2",
1336+ "ip": "2.2.2.2",
1337+ "port": 49692
1338+ },
1339+ "user": {
1340+ "domain": "example",
1341+ "name": "user1"
1342+ }
1343+ }
1344+
1345+ ```
1346+
1347+
1348+ === "test_sslvpn_log_9_dmy.json"
1349+
1350+ ```json
1351+
1352+ {
1353+ "message": "28/01/2026:14:14:14 HOSTNAME 0-PPE-0 : default SSLVPN ICASTART 25487330 0 : [TECHSUPPORT][LAUNCH][TCP][CGP][ICAUUID=11111111111-11111-1111-1111-111111111] Source 2.2.2.2:49692 - Destination 1.1.1.1:2598 - customername - username:domainname user1:example - applicationName Application-Test $S3-56 - startTime \"28/01/2026:14:14:13 \" - connectionId 1111111",
1354+ "event": {
1355+ "category": [
1356+ "network"
1357+ ],
1358+ "code": "ICASTART",
1359+ "dataset": "audit_sslvpn",
1360+ "type": [
1361+ "connection"
1362+ ]
1363+ },
1364+ "citrix": {
1365+ "adc": {
1366+ "application_name": "Application-Test $S3-56"
1367+ }
1368+ },
1369+ "destination": {
1370+ "address": "1.1.1.1",
1371+ "ip": "1.1.1.1",
1372+ "port": 2598
1373+ },
1374+ "observer": {
1375+ "name": "HOSTNAME"
1376+ },
1377+ "related": {
1378+ "ip": [
1379+ "1.1.1.1",
1380+ "2.2.2.2"
1381+ ],
1382+ "user": [
1383+ "user1"
1384+ ]
1385+ },
1386+ "source": {
1387+ "address": "2.2.2.2",
1388+ "ip": "2.2.2.2",
1389+ "port": 49692
1390+ },
1391+ "user": {
1392+ "domain": "example",
1393+ "name": "user1"
1394+ }
1395+ }
1396+
1397+ ```
1398+
1399+
12901400
12911401
12921402
@@ -1299,6 +1409,7 @@ The following table lists the fields that are extracted, normalized under the EC
12991409| ` @timestamp ` | ` date ` | Date/time when the event originated. |
13001410| ` citrix.adc.adm_user ` | ` keyword ` | |
13011411| ` citrix.adc.alert.severity ` | ` keyword ` | |
1412+ | ` citrix.adc.application_name ` | ` keyword ` | |
13021413| ` citrix.adc.bytes.received ` | ` long ` | |
13031414| ` citrix.adc.bytes.sent ` | ` long ` | |
13041415| ` citrix.adc.pseudo_tty ` | ` keyword ` | |
@@ -1331,6 +1442,7 @@ The following table lists the fields that are extracted, normalized under the EC
13311442| ` source.port ` | ` long ` | Port of the source. |
13321443| ` tls.cipher ` | ` keyword ` | String indicating the cipher used during the current connection. |
13331444| ` tls.version ` | ` keyword ` | Numeric part of the version parsed from the original string. |
1445+ | ` url.domain ` | ` keyword ` | Domain of the url. |
13341446| ` url.original ` | ` wildcard ` | Unmodified original url as seen in the event source. |
13351447| ` url.path ` | ` wildcard ` | Path of the request, such as "/search". |
13361448| ` user.domain ` | ` keyword ` | Name of the directory the user is a member of. |
0 commit comments