मैं एक logback.groovy कुछ कस्टम क्षेत्रों के साथ नेटवर्क पर एक logstash को डेटा भेजती हैं की है। हालांकि, मुझे कुछ फ़ील्ड नामों को साफ़ करने की आवश्यकता है जो लोचदार खोज डाउनस्ट्रीम के लिए मान्य नहीं हैं। LogstashEncoder प्रलेखन के आधार पर, इस इस तरह हासिल किया जा सकता:Logback.groovy LogstashEncoder फेरबदल फ़ील्ड नाम
<encoder class="net.logstash.logback.encoder.LogstashEncoder">
<fieldNames>
<timestamp>time</timestamp>
<message>msg</message>
...
</fieldNames>
</encoder>
इस महान लगता है, लेकिन मैं logback.groovy अंकन में इस फिट करने के लिए किया है। मैंने एक हैशैप, स्ट्रिंग और अधिक के रूप में प्रयास किया लेकिन हमेशा Cannot cast object 'xxxx' with class 'xxxx' to class 'net.logstash.logback.fieldnames.LogstashFieldNames'
दिलचस्प जवाब। अफसोस की बात है, यह वास्तव में काम नहीं करता है। फ़ील्ड नाम प्रति से मौजूद नहीं है। मैंने इसे LogstashFieldNames में परिवर्तित कर दिया और अनुकूलित किया ... (जो एक संकलन त्रुटि देता है) लेकिन यह शिकायत करता है कि यह उस वर्ग की टाइमस्टैम्प संपत्ति सेट नहीं कर सकता है। –