OrientDB - การบันทึก
OrientDB ใช้ Java Logging framework ที่มาพร้อมกับ Java Virtual Machine รูปแบบบันทึกเริ่มต้นของ OrientDB ถูกจัดการโดยOLogFormatter ชั้นเรียน.
คำสั่งต่อไปนี้เป็นไวยากรณ์พื้นฐานของคำสั่งการบันทึก
<date> <level> <message> [<requester>]
ต่อไปนี้เป็นรายละเอียดเกี่ยวกับตัวเลือกในไวยากรณ์ด้านบน
<date> - เป็นวันที่บันทึกในรูปแบบต่อไปนี้: yyyy-MM-dd HH: mm: ss: SSS
<level> - เป็นระดับการบันทึกเป็นเอาต์พุต 5 ตัวอักษร
<message> - เป็นข้อความบันทึกสามารถมีขนาดใดก็ได้
[<class>] - เป็นคลาส Java ที่ล็อกไว้ (ทางเลือก)
ระดับที่รองรับคือระดับที่มีอยู่ในคลาส JRE java.util.logging.Level พวกเขาคือ -
- SEVERE (ค่าสูงสุด)
- WARNING
- INFO
- CONFIG
- FINE
- FINER
- FINEST (ค่าต่ำสุด)
โดยค่าเริ่มต้นจะมีการติดตั้งคนตัดไม้สองตัว -
Consoleเป็นเอาต์พุตของเชลล์ / พร้อมต์คำสั่งที่สตาร์ทแอ็พพลิเคชัน / เซิร์ฟเวอร์ สามารถเปลี่ยนแปลงได้โดยตั้งค่าตัวแปร 'log.console.level'
Fileเป็นผลลัพธ์ไปยังล็อกไฟล์ สามารถเปลี่ยนแปลงได้โดยตั้งค่า 'log.file.level'
กำหนดค่าการบันทึก
กลยุทธ์และนโยบายการบันทึกสามารถกำหนดค่าได้โดยใช้ไฟล์ต่อจาก Java
syntax - การกำหนดค่า Java Logging
ตัวอย่าง
คัดลอกเนื้อหาต่อไปนี้จาก orientdb-server-log.properties ไฟล์และวางไว้ในไฟล์ $ORIENTDB_HOME/config ไฟล์.
# Specify the handlers to create in the root logger
# (all loggers are children of the root logger)
# The following creates two handlers
handlers = java.util.logging.ConsoleHandler, java.util.logging.FileHandler
# Set the default logging level for the root logger
.level = ALL
# Set the default logging level for new ConsoleHandler instances
java.util.logging.ConsoleHandler.level = INFO
# Set the default formatter for new ConsoleHandler instances
java.util.logging.ConsoleHandler.formatter =
com.orientechnologies.common.log.OLogFormatter
# Set the default logging level for new FileHandler instances
java.util.logging.FileHandler.level = INFO
# Naming style for the output file
java.util.logging.FileHandler.pattern =../log/orient-server.log
# Set the default formatter for new FileHandler instances
java.util.logging.FileHandler.formatter = com.orientechnologies.common.log.OLogFormatter
# Limiting size of output file in bytes:
java.util.logging.FileHandler.limit = 10000000
# Number of output files to cycle through, by appending an
# integer to the base file name:
java.util.logging.FileHandler.count = 10
หากต้องการบอก JVM ว่าวางไฟล์คุณสมบัติไว้ที่ใดคุณต้องตั้งค่า "java.util.logging.config.file"คุณสมบัติของระบบไปตัวอย่างเช่นใช้คำสั่งต่อไปนี้ -
$ java -Djava.util.logging.config.file=mylog.properties ...
ตั้งค่าระดับการบันทึก
หากต้องการเปลี่ยนระดับการบันทึกโดยไม่ต้องแก้ไขการกำหนดค่าการบันทึกเพียงตั้งค่า "log.console.level"และ"log.file.level"ตัวแปรของระบบตามระดับที่ร้องขอ
เข้าสู่ระบบเมื่อเริ่มต้น
ต่อไปนี้เป็นขั้นตอนในการตั้งค่าการบันทึกที่ระดับเริ่มต้นด้วยวิธีต่างๆ
ในการกำหนดค่าเซิร์ฟเวอร์
เปิดไฟล์ orientdb-server-config.xml และเพิ่มหรืออัพเดตบรรทัดเหล่านี้ที่ส่วนท้ายของไฟล์ในส่วน <properties> -
<entry value = "fine" name = "log.console.level" />
<entry value = "fine" name = "log.file.level" />
ในสคริปต์ Server.sh (หรือ. bat)
ตั้งค่าคุณสมบัติของระบบ "log.console.level"และ"log.file.level"ไปยังระดับที่คุณต้องการโดยใช้พารามิเตอร์ -D ของ java
$ java -Dlog.console.level = FINE ...
เข้าสู่ระบบในเวลาทำงาน
ต่อไปนี้เป็นขั้นตอนในการตั้งค่าการบันทึกที่ระดับเริ่มต้นด้วยวิธีต่างๆ
โดยใช้ Java Code
ตัวแปรระบบสามารถตั้งค่าได้เมื่อเริ่มต้นโดยใช้ System.setProperty () API ข้อมูลโค้ดต่อไปนี้เป็นไวยากรณ์สำหรับตั้งค่าระดับการบันทึกโดยใช้โค้ด Java
public void main(String[] args){
System.setProperty("log.console.level", "FINE");
...
}
บนเซิร์ฟเวอร์ระยะไกล
ดำเนินการ HTTP POST กับ URL: /server/log.<type>/ <level> โดยที่ -
- <type> สามารถเป็น "console" หรือ "file"
- <level> เป็นหนึ่งในระดับที่รองรับ
ตัวอย่าง
ตัวอย่างต่อไปนี้ใช้ cURLเพื่อรันคำสั่ง HTTP POST กับ OrientDB Server มีการใช้ผู้ใช้และรหัสผ่าน "root" ของเซิร์ฟเวอร์แทนที่ด้วยรหัสผ่านของคุณเอง
เปิดใช้งานระดับการติดตามที่ดีที่สุดเพื่อคอนโซล -
curl -u root:root -X POST http://localhost:2480/server/log.console/FINEST
เปิดใช้งานระดับการติดตามที่ดีที่สุดในไฟล์ -
curl -u root:root -X POST http://localhost:2480/server/log.file/FINEST