Điểm:0

Làm cách nào để bật tác nhân java cho mọi quy trình java mới trên Máy chủ?

lá cờ jp

Tôi có một tác nhân java mà tôi muốn được bật tự động cho bất kỳ quy trình java tùy ý nào đang chạy trên Máy chủ.

Tôi không thể dựa vào bí danh hoặc biến môi trường như CON ĐƯỜNG, JVM_OPTS vv vì tôi muốn bất kỳ quy trình JVM nào chọn tác nhân ngay cả khi chạy trực tiếp dưới dạng /usr/bin/java -jar my-app.jar.

Một cách (khá bẩn) để làm điều đó là thay thế vật lý java nhị phân với tập lệnh bash tùy chỉnh của tôi như thế này:

#!/bin/bash 
$(dirname "$0")/java. original "-javaagent:path/to/my-agent.jar" "$@"

Nó hoạt động, nhưng cách tiếp cận đó yêu cầu đổi tên bản gốc java tệp nhị phân mà tôi muốn tránh thực hiện.

Câu hỏi: Có cách nào tốt hơn để đạt được hành vi tương tự mà không cần chạm vào java nhị phân? Có bất kỳ tệp cấu hình cụ thể Java toàn cầu nào mà tôi có thể hướng dẫn Java luôn chạy với các đại lý nhất định?

lá cờ cn
Đây có phải là phù hợp hơn cho SO?
lá cờ jp
Có khả năng. Câu hỏi có thể được chuyển sang SO bằng cách nào đó hay tôi nên tạo lại câu hỏi ở đó?
lá cờ cn
Tôi không có khả năng di chuyển nó, nhưng vui lòng đăng chéo và chúng ta có thể đánh dấu câu trả lời này là trùng lặp hoặc liên kết câu trả lời.
djdomi avatar
lá cờ za
chỉ cần tự gắn cờ câu hỏi của bạn và nó sẽ được di chuyển
Điểm:0
lá cờ jp

Đây là một Java_TOOL_OPTIONS biến môi trường, có thể được đặt trong /etc/profile.d Cho tất cả người dùng.

xuất Java_TOOL_OPTIONS=-javaagent:path/to/my-agent.jar

Sau đó, mọi quy trình java sẽ chọn nó, bất kể nó được bắt đầu như thế nào.

từ chính thức tài liệu:

Biến môi trường này cho phép bạn chỉ định việc khởi tạo các công cụ, cụ thể là khởi chạy các tác nhân ngôn ngữ lập trình gốc hoặc Java bằng cách sử dụng -agentlib hoặc -javaagent tùy chọn. Trong ví dụ sau, biến môi trường được đặt để trình cấu hình HPROF được khởi chạy khi ứng dụng được khởi động:

$ xuất Java_TOOL_OPTIONS="-agentlib:hprof"

Biến này cũng có thể được sử dụng để tăng dòng lệnh với các tùy chọn khác cho mục đích chẩn đoán. Ví dụ: bạn có thể cung cấp tùy chọn -XX:OnError để chỉ định tập lệnh hoặc lệnh sẽ được thực thi khi xảy ra lỗi nghiêm trọng.

Ngoài ra còn có không có giấy tờ _JAVA_OPTIONS biến được ưu tiên hơn Java_TOOL_OPTIONS và các đối số dòng lệnh, có thể hữu ích trong một số trường hợp.Nhưng vì nó không được dùng nữa và có thể không được hỗ trợ trong tất cả các bản phân phối Java nên không nên sử dụng.

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.