mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2025-12-23 00:22:12 +00:00
This implements UDP Logging with GELF. It will allow full text search over all the logs and attributes sent over GELF to the log server.
49 lines
2.3 KiB
Plaintext
49 lines
2.3 KiB
Plaintext
/mob/var/lastattacker = null
|
|
/mob/var/lastattacked = null
|
|
/mob/var/attack_log = list()
|
|
|
|
proc/log_and_message_admins(var/message as text, var/mob/user = usr, var/turf/location)
|
|
var/turf/T = location ? location : (user ? get_turf(user) : null)
|
|
if(T)
|
|
message = message + " (<a HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[T.x];Y=[T.y];Z=[T.z]'>JMP</a>)"
|
|
|
|
log_admin(user ? "[key_name(user)] [message]" : "EVENT [message]")
|
|
message_admins(user ? "[key_name_admin(user)] [message]" : "EVENT [message]")
|
|
|
|
proc/log_and_message_admins_many(var/list/mob/users, var/message)
|
|
if(!users || !users.len)
|
|
return
|
|
|
|
var/list/user_keys = list()
|
|
for(var/mob/user in users)
|
|
user_keys += key_name(user)
|
|
|
|
log_admin("[english_list(user_keys)] [message]")
|
|
message_admins("[english_list(user_keys)] [message]")
|
|
|
|
proc/admin_attack_log(var/mob/attacker, var/mob/victim, var/attacker_message, var/victim_message, var/admin_message)
|
|
if(victim)
|
|
victim.attack_log += text("\[[time_stamp()]\] <font color='orange'>[key_name(attacker)] - [victim_message]</font>")
|
|
if(attacker)
|
|
attacker.attack_log += text("\[[time_stamp()]\] <font color='red'>[key_name(victim)] - [attacker_message]</font>")
|
|
|
|
msg_admin_attack("[key_name(attacker)] [admin_message] [key_name(victim)] (INTENT: [attacker? uppertext(attacker.a_intent) : "N/A"]) (<A HREF='?_src_=holder;adminplayerobservecoodjump=1;X=[attacker.x];Y=[attacker.y];Z=[attacker.z]'>JMP</a>)",ckey=key_name(attacker),ckey_target=key_name(victim))
|
|
|
|
proc/admin_attacker_log_many_victims(var/mob/attacker, var/list/mob/victims, var/attacker_message, var/victim_message, var/admin_message)
|
|
if(!victims || !victims.len)
|
|
return
|
|
|
|
for(var/mob/victim in victims)
|
|
admin_attack_log(attacker, victim, attacker_message, victim_message, admin_message)
|
|
|
|
proc/admin_inject_log(mob/attacker, mob/victim, obj/item/weapon, reagents, amount_transferred, violent=0)
|
|
if(violent)
|
|
violent = "violently "
|
|
else
|
|
violent = ""
|
|
admin_attack_log(attacker,
|
|
victim,
|
|
"used \the [weapon] to [violent]inject - [reagents] - [amount_transferred]u transferred",
|
|
"was [violent]injected with \the [weapon] - [reagents] - [amount_transferred]u transferred",
|
|
"used \the [weapon] to [violent]inject [reagents] ([amount_transferred]u transferred) into")
|