A search engine for IRC logs based on Lucene
Você não pode selecionar mais de 25 tópicos Os tópicos devem começar com uma letra ou um número, podem incluir traços ('-') e podem ter até 35 caracteres.
Abhinav Sarkar 75004747b3 Some more scalafication 7 anos atrás
src/main/scala/net/abhinavsarkar/ircsearch Some more scalafication 7 anos atrás
.gitignore Initial commit, created a basic server based on netty 7 anos atrás
.travis.yml Added travis yml file 7 anos atrás
README.md Added README 7 anos atrás
irc-search.conf Moved out configuration to external file 7 anos atrás
pom.xml Some more scalafication 7 anos atrás

README.md

A search engine for IRC logs. Based on Lucene and Netty. Runs as an HTTP server, exposing REST endpoints for indexing and searching.

Build and Run

First install Apache Maven. Then execute this command to run the server at port 9090:

mvn package && java -cp target/dependency/*:target/* net.abhinavsarkar.ircsearch.Server 9090

Index chat lines

$ cat ireq | json_pp
{
   "botName" : "some",
   "chatLines" : [
      {
         "timestamp" : 12312312312,
         "user" : "abhinav",
         "message" : "hi"
      },
      {
         "timestamp" : 12312312312,
         "user" : "abhinav",
         "message" : "hi"
      }
   ],
   "channel" : "as",
   "server" : "ima"
}

$ curl -X POST -d @ireq localhost:9090/index

Search

$ cat sreq | json_pp
{
   "botName" : "some",
   "page" : 0,
   "query" : "hi user:abhinav",
   "channel" : "as",
   "server" : "ima",
   "pageSize" : 10
}

$ curl -X POST -d @sreq localhost:9090/search -s | json_pp
{
   "page" : 0,
   "query" : "hi user:abhinav",
   "channel" : "as",
   "pageSize" : 10,
   "botName" : "some",
   "chatLines" : [
      {
         "timestamp" : 12312312312,
         "user" : "abhinav",
         "message" : "hi"
      },
      {
         "timestamp" : 12312312312,
         "user" : "abhinav",
         "message" : "hi"
      }
   ],
   "server" : "ima",
   "totalResults" : 24
}