Page Menu
Home
Software Heritage
Search
Configure Global Search
Log In
Files
F9346838
accesslog.js
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
1 KB
Subscribers
None
accesslog.js
View Options
/*
Language: Apache Access Log
Author: Oleg Efimov <efimovov@gmail.com>
Description: Apache/Nginx Access Logs
Website: https://httpd.apache.org/docs/2.4/logs.html#accesslog
Category: web, logs
Audit: 2020
*/
/** @type LanguageFn */
function
accesslog
(
hljs
)
{
const
regex
=
hljs
.
regex
;
// https://developer.mozilla.org/en-US/docs/Web/HTTP/Methods
const
HTTP_VERBS
=
[
"GET"
,
"POST"
,
"HEAD"
,
"PUT"
,
"DELETE"
,
"CONNECT"
,
"OPTIONS"
,
"PATCH"
,
"TRACE"
];
return
{
name
:
'Apache Access Log'
,
contains
:
[
// IP
{
className
:
'number'
,
begin
:
/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}(:\d{1,5})?\b/
,
relevance
:
5
},
// Other numbers
{
className
:
'number'
,
begin
:
/\b\d+\b/
,
relevance
:
0
},
// Requests
{
className
:
'string'
,
begin
:
regex
.
concat
(
/"/
,
regex
.
either
(...
HTTP_VERBS
)),
end
:
/"/
,
keywords
:
HTTP_VERBS
,
illegal
:
/\n/
,
relevance
:
5
,
contains
:
[
{
begin
:
/HTTP\/[12]\.\d'/
,
relevance
:
5
}
]
},
// Dates
{
className
:
'string'
,
// dates must have a certain length, this prevents matching
// simple array accesses a[123] and [] and other common patterns
// found in other languages
begin
:
/\[\d[^\]\n]{8,}\]/
,
illegal
:
/\n/
,
relevance
:
1
},
{
className
:
'string'
,
begin
:
/\[/
,
end
:
/\]/
,
illegal
:
/\n/
,
relevance
:
0
},
// User agent / relevance boost
{
className
:
'string'
,
begin
:
/"Mozilla\/\d\.\d \(/
,
end
:
/"/
,
illegal
:
/\n/
,
relevance
:
3
},
// Strings
{
className
:
'string'
,
begin
:
/"/
,
end
:
/"/
,
illegal
:
/\n/
,
relevance
:
0
}
]
};
}
module
.
exports
=
accesslog
;
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Fri, Jul 4, 4:32 PM (2 w, 4 d ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3319745
Attached To
rDWAPPS Web applications
Event Timeline
Log In to Comment