2016-12-21 1 views
0

Gibt es eine Möglichkeit, die Solr-Version und JVM-Eigenschaften wie das Home-Verzeichnis von Solr zu erhalten, ohne HTML analysieren zu müssen?Solr-Version und JVM-Eigenschaften über Web-API beziehen

Schlagen Sie diese URL, http://localhost:8983/solr/#/ zeigt die gewünschten Werte an: Solr Display und die gewünschten Werte können aus dem zurückgegebenen HTML analysiert werden: xml <li class="solr solr_spec_version odd" style="display: list-item;"> <dl class="clearfix"> <dt><span>solr-spec</span></dt> <dd>5.0.0</dd> </dl></li>

Gibt es einen direkteren Weg, um diese Werte zu erhalten, ohne HTML mit analysieren ?

Antwort

1

Diese Informationen über Ajax von http://localhost:8983/solr/admin/info/system, geladen, die diese Informationen im XML- oder JSON-Format zurückgibt, zum Beispiel:

<response> 
    <lst name="responseHeader"> 
     <int name="status">0</int> 
     <int name="QTime">1</int> 
    </lst> 
    <str name="mode">std</str> 
    <str name="solr_home">D:\solr\solr-5.0.0\solr-5.0.0\server\solr\</str> 
    <lst name="lucene"> 
     <str name="solr-spec-version">5.0.0</str> 
     <str name="solr-impl-version">5.0.0 1659987 - anshumgupta - 2015-02-15 12:26:10</str> 
     <str name="lucene-spec-version">5.0.0</str> 
     <str name="lucene-impl-version">5.0.0 1659987 - anshumgupta - 2015-02-15 12:20:03</str> 
    </lst> 
    ... 

Diese Werte durch die Datei app.js JavaScript geladen werden (server \ solr- webapp \ webapp \ js \ scripts \ app.js)

var system_url = config.solr_path + '/admin/info/system?wt=json';

es im ouput via index.js wiedergegeben wird (server \ solr-webapp \ webapp \ js \ scripts \ index.js):

 var data = { 
     'start_time' : app.dashboard_values['jvm']['jmx']['startTime'], 
     'jvm_version' : app.dashboard_values['jvm']['name'] + ' (' + app.dashboard_values['jvm']['version'] + ')', 
     'processors' : app.dashboard_values['jvm']['processors'], 
     'solr_spec_version' : app.dashboard_values['lucene']['solr-spec-version'] || '-', 
     'solr_impl_version' : app.dashboard_values['lucene']['solr-impl-version'] || '-', 
     'lucene_spec_version' : app.dashboard_values['lucene']['lucene-spec-version'] || '-', 
     'lucene_impl_version' : app.dashboard_values['lucene']['lucene-impl-version'] || '-' 
     }; 

     for(var key in data) 
     {               
     var value_element = $('.' + key + ' dd', this); 

     value_element 
      .text(data[key].esc()); 

     value_element.closest('li') 
      .show(); 
     }