zoukankan      html  css  js  c++  java
  • Elasticsearch cat Apis

    1、_cat列入所有有效命令

    GET /_cat
    
    返回:有个猫...所以不难想象为啥是cat api
    =^.^=
    /_cat/allocation
    /_cat/shards
    /_cat/shards/{index}
    /_cat/master
    /_cat/nodes
    /_cat/tasks
    /_cat/indices
    /_cat/indices/{index}
    /_cat/segments
    /_cat/segments/{index}
    /_cat/count
    /_cat/count/{index}
    /_cat/recovery
    /_cat/recovery/{index}
    /_cat/health
    /_cat/pending_tasks
    /_cat/aliases
    /_cat/aliases/{alias}
    /_cat/thread_pool
    /_cat/thread_pool/{thread_pools}
    /_cat/plugins
    /_cat/fielddata
    /_cat/fielddata/{fields}
    /_cat/nodeattrs
    /_cat/repositories
    /_cat/snapshots/{repository}
    /_cat/templates

    2、通用参数

    2.1 verbose参数,显示命令详细信息

    GET /_cat/master?v
    
    result:
    id                     host          ip            node
    Sa5md_zERDebxloO004ffQ 192.168.31.10 192.168.31.10 vmstation.es.1
    
    没有加?v的情况,result:
    Sa5md_zERDebxloO004ffQ 192.168.31.10 192.168.31.10 vmstation.es.1

    2.2 help参数,显示有效列的详细说明

    GET /_cat/master?help
    
    result:
    id   |   | node id    
    host | h | host name  
    ip   |   | ip address 
    node | n | node name  

    2.3 header参数,选择显示的列

    GET /_cat/nodes?h=ip,port,heapPercent,name  
    
    result:
    192.168.31.10 9300 43 vmstation.es.1

    2.4、响应体返回格式,支持json,yaml,text(default),smile,cbor

    json格式
    GET /_cat/indices?format=json&pretty result: [ { "health" : "green", "status" : "open", "index" : ".monitoring-kibana-6-2018.12.24", "uuid" : "vkJltBs1T8qEfdUDdyDYzA", "pri" : "1", "rep" : "0", "docs.count" : "1345", "docs.deleted" : "0", "store.size" : "453.3kb", "pri.store.size" : "453.3kb" }, { "health" : "green", "status" : "open", "index" : "user2", "uuid" : "xo9Zb2OkRWeqV5bRKNDKGg", "pri" : "1", "rep" : "0", "docs.count" : "12", "docs.deleted" : "0", "store.size" : "7.9kb", "pri.store.size" : "7.9kb" }, ..... ]

    2.5、多个参数混合使用,一个问号,参数用&连接

    GET /_cat/nodes?v&h=ip,port,heapPercent,name
    
    result:
    ip            port heapPercent name
    192.168.31.10 9300          59 vmstation.es.1

    2.6、排序sort,缺省是asc排序

    GET /_cat/indices?v&h=health,index,store.size&s=store.size:desc
    
    result:
    health index                           store.size
    green  .monitoring-es-6-2018.12.24           10mb
    green  .monitoring-es-6-2018.12.20            5mb
    green  .monitoring-es-6-2018.12.25          4.4mb
    green  .monitoring-kibana-6-2018.12.24    453.3kb
    green  .monitoring-kibana-6-2018.12.20      318kb
    green  .monitoring-kibana-6-2018.12.25    195.2kb
    yellow bus                                   86kb
    yellow blog                                34.3kb
    green  shirts                                25kb
    yellow home                                16.8kb
    green  user                                13.7kb
    green  .kibana_1                             12kb
    green  bus2                                11.6kb
    green  user2                                7.9kb
    green  user3                                 261b
    多个字段排序:
    GET /_cat/indices?v&h=health,index,store.size,pri.store.size&s=store.size:desc,pri.store.size:desc
    
    result:
    health index                           store.size pri.store.size
    green  .monitoring-es-6-2018.12.24           10mb           10mb
    green  .monitoring-es-6-2018.12.20            5mb            5mb
    green  .monitoring-es-6-2018.12.25          4.6mb          4.6mb
    green  .monitoring-kibana-6-2018.12.24    453.3kb        453.3kb
    green  .monitoring-kibana-6-2018.12.20      318kb          318kb
    green  .monitoring-kibana-6-2018.12.25    202.4kb        202.4kb
    yellow bus                                   86kb           86kb
    yellow blog                                34.3kb         34.3kb
    green  shirts                                25kb           25kb
    yellow home                                16.8kb         16.8kb
    green  user                                13.7kb         13.7kb
    green  .kibana_1                             12kb           12kb
    green  bus2                                11.6kb         11.6kb
    green  user2                                7.9kb          7.9kb
    green  user3                                 261b           261b

    3、aliases显示别名、过滤器、路由信息

    GET /_cat/aliases?v
    
    result:
    alias   index     filter routing.index routing.search
    .kibana .kibana_1 -      -             -

    4、allocation显示每个数据节点分配多少碎片以及它们使用多少磁盘空间的快照

    GET /_cat/allocation?v&format=json
    
    result:
    [
      {
        "shards" : "20",
        "disk.indices" : "21.4mb",
        "disk.used" : "4gb",
        "disk.avail" : "12.9gb",
        "disk.total" : "16.9gb",
        "disk.percent" : "23",
        "host" : "192.168.31.10",
        "ip" : "192.168.31.10",
        "node" : "vmstation.es.1"
      },
      {
        "shards" : "7",
        "disk.indices" : null,
        "disk.used" : null,
        "disk.avail" : null,
        "disk.total" : null,
        "disk.percent" : null,
        "host" : null,
        "ip" : null,
        "node" : "UNASSIGNED"
      }
    ]
    #7个碎片是曾经属于一个集群,现在只有单节点,但是索引建立的时候使用它作为副本,所以信息都是未知的。

    5、count显示所有索引或者某个索引的文档数量

    GET /_cat/count?v
    
    result:
    epoch      timestamp count
    1545709338 03:42:18  47638

    或者单个索引

    GET /_cat/count/bus?v
    
    result:
    epoch      timestamp count
    1545709383 03:43:03  27

    6、fielddata

    GET /_cat/fielddata?v
    
    result:
    id                     host          ip            node           field size
    Sa5md_zERDebxloO004ffQ 192.168.31.10 192.168.31.10 vmstation.es.1 type  552b

    7、indices显示每个索引的横截面。此信息跨越节点。

    GET /_cat/indices?v
    
    result:
    health status index                           uuid                   pri rep docs.count docs.deleted store.size pri.store.size
    green  open   .monitoring-kibana-6-2018.12.24 vkJltBs1T8qEfdUDdyDYzA   1   0       1345            0    453.3kb        453.3kb
    green  open   user2                           xo9Zb2OkRWeqV5bRKNDKGg   1   0         12            0      7.9kb          7.9kb
    yellow open   bus                             G4DrNdPhRWK_rBuEaluwsA   3   1         27            3       86kb           86kb
    green  open   .monitoring-es-6-2018.12.25     Gl01crYyQImkxCTGvB3Xkg   1   0      16845          189     15.6mb         15.6mb
    green  open   shirts                          NLF5tjIuSz-JbUQcc_VbiQ   1   0          7            0       25kb           25kb
    green  open   .monitoring-kibana-6-2018.12.20 GRwFygbPRw62Qeoyg-68Mg   1   0        719            0      318kb          318kb
    green  open   .monitoring-kibana-6-2018.12.25 TmCzVC4wQrmmElX8Bbmjdg   1   0        866            0    710.2kb        710.2kb
    green  open   .monitoring-es-6-2018.12.20     IH3moZNyQfCHp8ZUjelmWA   1   0       9548          215        5mb            5mb
    yellow open   home                            CSyKu2FJTZGtSIg0jOltcw   2   1          7            0     16.8kb         16.8kb
    green  open   .monitoring-es-6-2018.12.24     jCgptARpQ8S-B3Gn8adYSQ   1   0      23936           25       10mb           10mb
    yellow open   blog                            G7leckf1RQGHNCZKROpBCg   2   1         33            6     34.3kb         34.3kb
    green  open   .kibana_1                       olE1g78PTl-FxApa5LXhtg   1   0          3            0       12kb           12kb
    green  open   user3                           -ArWuP3ZRsGsoiLwMxRyKQ   1   0          0            0       261b           261b
    green  open   bus2                            j2ckAmxCRjuH6xVCU1aATA   1   0         27            0     11.6kb         11.6kb
    green  open   user                            WdRH_r9DSDOtySMxlRYe_g   2   0         12            0     13.7kb         13.7kb

    单个索引(支持通配符):

    GET /_cat/indices/bus*?v&h=index,status,pri,rep,docs.count
    
    result:
    index status pri rep docs.count
    bus2  open     1   0         27
    bus   open     3   1         27

    或者

    GET /_cat/indices?v&index=bus*

    8、master显示master节点

    GET /_cat/master?v
    
    result:
    id                     host          ip            node
    Sa5md_zERDebxloO004ffQ 192.168.31.10 192.168.31.10 vmstation.es.1

    9、nodeattrs显示节点属性

    GET /_cat/nodeattrs?v&h=node,id,pid,host,port,attr,value
    
    result:
    node           id   pid  host          port attr              value
    vmstation.es.1 Sa5m 1763 192.168.31.10 9300 ml.machine_memory 1911832576
    vmstation.es.1 Sa5m 1763 192.168.31.10 9300 xpack.installed   true
    vmstation.es.1 Sa5m 1763 192.168.31.10 9300 ml.max_open_jobs  20
    vmstation.es.1 Sa5m 1763 192.168.31.10 9300 ml.enabled        true

    10、nodes显示集群拓扑

    GET /_cat/nodes?v&format=json
    
    result:
    [
      {
        "ip" : "192.168.31.10",
        "heap.percent" : "40",
        "ram.percent" : "95",
        "cpu" : "7",
        "load_1m" : "0.25",
        "load_5m" : "0.19",
        "load_15m" : "0.13",
        "node.role" : "mdi",
        "master" : "*",
        "name" : "vmstation.es.1"
      }
    ]
        

    列内容包括:

    id                           | id,nodeId                      | unique node id                                                                                                   
    pid                          | p                              | process id                                                                                                       
    ip                           | i                              | ip address                                                                                                       
    port                         | po                             | bound transport port                                                                                             
    http_address                 | http                           | bound http address                                                                                               
    version                      | v                              | es version                                                                                                       
    flavor                       | f                              | es distribution flavor                                                                                           
    type                         | t                              | es distribution type                                                                                             
    build                        | b                              | es build hash                                                                                                    
    jdk                          | j                              | jdk version                                                                                                      
    disk.total                   | dt,diskTotal                   | total disk space                                                                                                 
    disk.used                    | du,diskUsed                    | used disk space                                                                                                  
    disk.avail                   | d,da,disk,diskAvail            | available disk space                                                                                             
    disk.used_percent            | dup,diskUsedPercent            | used disk space percentage                                                                                       
    heap.current                 | hc,heapCurrent                 | used heap                                                                                                        
    heap.percent                 | hp,heapPercent                 | used heap ratio                                                                                                  
    heap.max                     | hm,heapMax                     | max configured heap                                                                                              
    ram.current                  | rc,ramCurrent                  | used machine memory                                                                                              
    ram.percent                  | rp,ramPercent                  | used machine memory ratio                                                                                        
    ram.max                      | rm,ramMax                      | total machine memory                                                                                             
    file_desc.current            | fdc,fileDescriptorCurrent      | used file descriptors                                                                                            
    file_desc.percent            | fdp,fileDescriptorPercent      | used file descriptor ratio                                                                                       
    file_desc.max                | fdm,fileDescriptorMax          | max file descriptors                                                                                             
    cpu                          | cpu                            | recent cpu usage                                                                                                 
    load_1m                      | l                              | 1m load avg                                                                                                      
    load_5m                      | l                              | 5m load avg                                                                                                      
    load_15m                     | l                              | 15m load avg                                                                                                     
    uptime                       | u                              | node uptime                                                                                                      
    node.role                    | r,role,nodeRole                | m:master eligible node, d:data node, i:ingest node, -:coordinating node only                                     
    master                       | m                              | *:current master                                                                                                 
    name                         | n                              | node name                                                                                                        
    completion.size              | cs,completionSize              | size of completion                                                                                               
    fielddata.memory_size        | fm,fielddataMemory             | used fielddata cache                                                                                             
    fielddata.evictions          | fe,fielddataEvictions          | fielddata evictions                                                                                              
    query_cache.memory_size      | qcm,queryCacheMemory           | used query cache                                                                                                 
    query_cache.evictions        | qce,queryCacheEvictions        | query cache evictions                                                                                            
    request_cache.memory_size    | rcm,requestCacheMemory         | used request cache                                                                                               
    request_cache.evictions      | rce,requestCacheEvictions      | request cache evictions                                                                                          
    request_cache.hit_count      | rchc,requestCacheHitCount      | request cache hit counts                                                                                         
    request_cache.miss_count     | rcmc,requestCacheMissCount     | request cache miss counts                                                                                        
    flush.total                  | ft,flushTotal                  | number of flushes                                                                                                
    flush.total_time             | ftt,flushTotalTime             | time spent in flush                                                                                              
    get.current                  | gc,getCurrent                  | number of current get ops                                                                                        
    get.time                     | gti,getTime                    | time spent in get                                                                                                
    get.total                    | gto,getTotal                   | number of get ops                                                                                                
    get.exists_time              | geti,getExistsTime             | time spent in successful gets                                                                                    
    get.exists_total             | geto,getExistsTotal            | number of successful gets                                                                                        
    get.missing_time             | gmti,getMissingTime            | time spent in failed gets                                                                                        
    get.missing_total            | gmto,getMissingTotal           | number of failed gets                                                                                            
    indexing.delete_current      | idc,indexingDeleteCurrent      | number of current deletions                                                                                      
    indexing.delete_time         | idti,indexingDeleteTime        | time spent in deletions                                                                                          
    indexing.delete_total        | idto,indexingDeleteTotal       | number of delete ops                                                                                             
    indexing.index_current       | iic,indexingIndexCurrent       | number of current indexing ops                                                                                   
    indexing.index_time          | iiti,indexingIndexTime         | time spent in indexing                                                                                           
    indexing.index_total         | iito,indexingIndexTotal        | number of indexing ops                                                                                           
    indexing.index_failed        | iif,indexingIndexFailed        | number of failed indexing ops                                                                                    
    merges.current               | mc,mergesCurrent               | number of current merges                                                                                         
    merges.current_docs          | mcd,mergesCurrentDocs          | number of current merging docs                                                                                   
    merges.current_size          | mcs,mergesCurrentSize          | size of current merges                                                                                           
    merges.total                 | mt,mergesTotal                 | number of completed merge ops                                                                                    
    merges.total_docs            | mtd,mergesTotalDocs            | docs merged                                                                                                      
    merges.total_size            | mts,mergesTotalSize            | size merged                                                                                                      
    merges.total_time            | mtt,mergesTotalTime            | time spent in merges                                                                                             
    refresh.total                | rto,refreshTotal               | total refreshes                                                                                                  
    refresh.time                 | rti,refreshTime                | time spent in refreshes                                                                                          
    refresh.listeners            | rli,refreshListeners           | number of pending refresh listeners                                                                              
    script.compilations          | scrcc,scriptCompilations       | script compilations                                                                                              
    script.cache_evictions       | scrce,scriptCacheEvictions     | script cache evictions                                                                                           
    search.fetch_current         | sfc,searchFetchCurrent         | current fetch phase ops                                                                                          
    search.fetch_time            | sfti,searchFetchTime           | time spent in fetch phase                                                                                        
    search.fetch_total           | sfto,searchFetchTotal          | total fetch ops                                                                                                  
    search.open_contexts         | so,searchOpenContexts          | open search contexts                                                                                             
    search.query_current         | sqc,searchQueryCurrent         | current query phase ops                                                                                          
    search.query_time            | sqti,searchQueryTime           | time spent in query phase                                                                                        
    search.query_total           | sqto,searchQueryTotal          | total query phase ops                                                                                            
    search.scroll_current        | scc,searchScrollCurrent        | open scroll contexts                                                                                             
    search.scroll_time           | scti,searchScrollTime          | time scroll contexts held open                                                                                   
    search.scroll_total          | scto,searchScrollTotal         | completed scroll contexts                                                                                        
    segments.count               | sc,segmentsCount               | number of segments                                                                                               
    segments.memory              | sm,segmentsMemory              | memory used by segments                                                                                          
    segments.index_writer_memory | siwm,segmentsIndexWriterMemory | memory used by index writer                                                                                      
    segments.version_map_memory  | svmm,segmentsVersionMapMemory  | memory used by version map                                                                                       
    segments.fixed_bitset_memory | sfbm,fixedBitsetMemory         | memory used by fixed bit sets for nested object field types and type filters for types referred in _parent fields
    suggest.current              | suc,suggestCurrent             | number of current suggest ops                                                                                    
    suggest.time                 | suti,suggestTime               | time spend in suggest                                                                                            
    suggest.total                | suto,suggestTotal              | number of suggest ops                                                                                            

    选择显示内容:

    GET /_cat/nodes?v&format=json&h=id,i,p,http,v,j,dt,du,hc,hp,hx,rc,rp,rm
    
    result:
    [
      {
        "id" : "Sa5m",
        "i" : "192.168.31.10",
        "p" : "1763",
        "http" : "192.168.31.10:9200",
        "v" : "6.5.1",
        "j" : "1.8.0_172",
        "dt" : "16.9gb",
        "du" : "4.1gb",
        "hc" : "461mb",
        "hp" : "45",
        "rc" : "1.6gb",
        "rp" : "94",
        "rm" : "1.7gb"
      }
    ]

    11、显示正在等待的任务

    GET /_cat/pending_tasks?v
    
    result:
    insertOrder timeInQueue priority source
           1685       855ms HIGH     update-mapping [foo][t]
           1686       843ms HIGH     update-mapping [foo][t]
           1693       753ms HIGH     refresh-mapping [foo][[t]]
           1688       816ms HIGH     update-mapping [foo][t]
           1689       802ms HIGH     update-mapping [foo][t]
           1690       787ms HIGH     update-mapping [foo][t]
           1691       773ms HIGH     update-mapping [foo][t]

    12、plugins显示每个运行插件节点的视图,该信息跨节点。

    GET /_cat/plugins?v&s=component&h=name,component,version,description
    
    result:
    name           component   version description
    vmstation.es.1 analysis-ik 6.5.1   IK Analyzer for Elasticsearch

    13、recovery是正在进行的和先前完成的索引碎片恢复的视图。

    只要索引碎片移动到集群中的不同节点,就会发生恢复事件。这可以在快照恢复、复制级别更改、节点失败或节点启动时发生。最后一种类型称为本地存储恢复,是当节点启动时从磁盘加载碎片的正常方式。

    GET /_cat/recovery?v&format=json
    
    result:
    [
      {
        "index" : "user2",
        "shard" : "0",
        "time" : "333ms",
        "type" : "existing_store",
        "stage" : "done",
        "source_host" : "n/a",
        "source_node" : "n/a",
        "target_host" : "192.168.31.10",
        "target_node" : "vmstation.es.1",
        "repository" : "n/a",
        "snapshot" : "n/a",
        "files" : "0",
        "files_recovered" : "0",
        "files_percent" : "100.0%",
        "files_total" : "4",
        "bytes" : "0",
        "bytes_recovered" : "0",
        "bytes_percent" : "100.0%",
        "bytes_total" : "8105",
        "translog_ops" : "0",
        "translog_ops_recovered" : "0",
        "translog_ops_percent" : "100.0%"
      },
      {
        "index" : "bus",
        "shard" : "0",
        "time" : "388ms",
        "type" : "existing_store",
        "stage" : "done",
        "source_host" : "n/a",
        "source_node" : "n/a",
        "target_host" : "192.168.31.10",
        "target_node" : "vmstation.es.1",
        "repository" : "n/a",
        "snapshot" : "n/a",
        "files" : "0",
        "files_recovered" : "0",
        "files_percent" : "100.0%",
        "files_total" : "28",
        "bytes" : "0",
        "bytes_recovered" : "0",
        "bytes_percent" : "100.0%",
        "bytes_total" : "21695",
        "translog_ops" : "0",
        "translog_ops_recovered" : "0",
        "translog_ops_percent" : "100.0%"
      },
     ... ...
    ]

    14、thread_pool显示线程池信息

    GET /_cat/thread_pool?v
    
    result:
    node_name      name                active queue rejected
    vmstation.es.1 analyze                  0     0        0
    vmstation.es.1 ccr                      0     0        0
    vmstation.es.1 fetch_shard_started      0     0        0
    vmstation.es.1 fetch_shard_store        0     0        0
    vmstation.es.1 flush                    0     0        0
    vmstation.es.1 force_merge              0     0        0
    vmstation.es.1 generic                  0     0        0
    vmstation.es.1 get                      0     0        0
    vmstation.es.1 index                    0     0        0
    vmstation.es.1 listener                 0     0        0
    vmstation.es.1 management               1     0        0
    vmstation.es.1 ml_autodetect            0     0        0
    vmstation.es.1 ml_datafeed              0     0        0
    vmstation.es.1 ml_utility               0     0        0
    vmstation.es.1 refresh                  0     0        0
    vmstation.es.1 rollup_indexing          0     0        0
    vmstation.es.1 search                   0     0        0
    vmstation.es.1 search_throttled         0     0        0
    vmstation.es.1 security-token-key       0     0        0
    vmstation.es.1 snapshot                 0     0        0
    vmstation.es.1 warmer                   0     0        0
    vmstation.es.1 watcher                  0     0        0
    vmstation.es.1 write                    0     0        0

    15、shards显示碎片视图

    GET /_cat/shards?v&format=json
    
    result:
    [
      {
        "index" : "bus2",
        "shard" : "0",
        "prirep" : "p",
        "state" : "STARTED",
        "docs" : "27",
        "store" : "11.6kb",
        "ip" : "192.168.31.10",
        "node" : "vmstation.es.1"
      },
      {
        "index" : ".kibana_1",
        "shard" : "0",
        "prirep" : "p",
        "state" : "STARTED",
        "docs" : "3",
        "store" : "12kb",
        "ip" : "192.168.31.10",
        "node" : "vmstation.es.1"
      },
    ... ...
    ]

    按索引显示:

    GET /_cat/shards/bus?v
    
    result:
    index shard prirep state      docs  store ip            node
    bus   1     p      STARTED       7 27.8kb 192.168.31.10 vmstation.es.1
    bus   1     r      UNASSIGNED                           
    bus   2     p      STARTED       9   37kb 192.168.31.10 vmstation.es.1
    bus   2     r      UNASSIGNED                           
    bus   0     p      STARTED      11 21.1kb 192.168.31.10 vmstation.es.1
    bus   0     r      UNASSIGNED                           

    16、segments显示碎片中的分段信息

    GET /_cat/segments?v&format=json
    
    result:
    index                           shard prirep ip            segment generation docs.count docs.deleted    size size.memory committed searchable version compound
    user2                           0     p      192.168.31.10 _0               0         12            0   7.5kb        2726 true      true       7.5.0   true
    bus                             0     p      192.168.31.10 _q              26          7            3   5.3kb        1982 true      true       7.5.0   false
    bus                             0     p      192.168.31.10 _r              27          1            0   3.7kb        1827 true      true       7.5.0   true
    bus                             0     p      192.168.31.10 _s              28          1            0   3.7kb        1827 true      true       7.5.0   true
    bus                             0     p      192.168.31.10 _t              29          1            0   3.7kb        1827 true      true       7.5.0   true
    bus                             0     p      192.168.31.10 _u              30          1            0   3.9kb        1965 true      true       7.5.0   true
    bus                             1     p      192.168.31.10 _7               7          1            0   3.9kb        1829 true      true       7.5.0   true
    bus                             1     p      192.168.31.10 _8               8          1            0   3.9kb        1829 true      true       7.5.0   true
    bus                             1     p      192.168.31.10 _9               9          1            0   3.9kb        1829 true      true       7.5.0   true
    bus                             1     p      192.168.31.10 _a              10          1            0   3.9kb        1829 true      true       7.5.0   true
    bus                             1     p      192.168.31.10 _b              11          1            0   3.9kb        1829 true      true       7.5.0   true
    bus                             1     p      192.168.31.10 _c              12          1            0   3.8kb        1829 true      true       7.5.0   true
    bus                             1     p      192.168.31.10 _f              15          1            0   3.5kb        1538 true      true       7.5.0   true
    ... ...
  • 相关阅读:
    与众不同 windows phone (50)
    与众不同 windows phone (49)
    重新想象 Windows 8.1 Store Apps (93)
    重新想象 Windows 8.1 Store Apps 系列文章索引
    重新想象 Windows 8.1 Store Apps (92)
    重新想象 Windows 8.1 Store Apps (91)
    重新想象 Windows 8.1 Store Apps (90)
    重新想象 Windows 8.1 Store Apps (89)
    重新想象 Windows 8.1 Store Apps (88)
    重新想象 Windows 8.1 Store Apps (87)
  • 原文地址:https://www.cnblogs.com/asker009/p/10173425.html
Copyright © 2011-2022 走看看