{"id":31904321,"url":"https://github.com/cloudfoundry-community/kibana-me-logs","last_synced_at":"2025-10-13T13:49:01.457Z","repository":{"id":28452001,"uuid":"31967535","full_name":"cloudfoundry-community/kibana-me-logs","owner":"cloudfoundry-community","description":"The application hosts Kibana 3 and a proxy that binds to your Logstash/Elastic Search backend service. You can now see your logs in Kibana!","archived":false,"fork":false,"pushed_at":"2016-11-29T21:19:57.000Z","size":1005,"stargazers_count":17,"open_issues_count":0,"forks_count":13,"subscribers_count":32,"default_branch":"master","last_synced_at":"2024-04-14T22:47:40.897Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"HTML","has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"lnguyen/gopher-kibana","license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/cloudfoundry-community.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-03-10T16:13:04.000Z","updated_at":"2024-02-09T14:28:00.000Z","dependencies_parsed_at":"2023-07-02T14:16:41.067Z","dependency_job_id":null,"html_url":"https://github.com/cloudfoundry-community/kibana-me-logs","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/cloudfoundry-community/kibana-me-logs","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudfoundry-community%2Fkibana-me-logs","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudfoundry-community%2Fkibana-me-logs/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudfoundry-community%2Fkibana-me-logs/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudfoundry-community%2Fkibana-me-logs/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/cloudfoundry-community","download_url":"https://codeload.github.com/cloudfoundry-community/kibana-me-logs/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/cloudfoundry-community%2Fkibana-me-logs/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279015347,"owners_count":26085686,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-13T02:00:06.723Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2025-10-13T13:48:35.690Z","updated_at":"2025-10-13T13:49:01.450Z","avatar_url":"https://github.com/cloudfoundry-community.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"Kibana Me Logs\n==============\n\nDraining logs from your Cloud Foundry hosted application to a backend Logstash/Elastic Search is great - it drains them all day long. Except, you can't see them. They are stored in Elastic Search and you have no way to access either Elastic Search nor a Kibana UI to view the logs.\n\n**Events over time:**\n\n![events-over-time](http://cl.ly/image/0r0O2a1n2D1W/events-over-time.png)\n\n**Line-by-line logs**\n\n![line-by-line](http://cl.ly/image/3M2U3A3u1v0S/line-by-line_logs.png)\n\nThe application hosts Kibana 3 and a proxy that binds to your Logstash/Elastic Search backend service. You can now see your logs in Kibana!\n\nThis is a work-in-progress and/or a stop-gap until a better multi-tenant solution exists. It's primary weakness is it lacks authentication.\n\nIt assumes that users are getting Logstash via the Docker/Logstash Service Broker. See below for details.\n\nFor users, there is the complimentary `cf kibana-me-logs` CLI plugin https://github.com/cloudfoundry-community/cf-plugin-kibana-me-logs\n\nFor administrators, there is `./bin/upgrade-all.sh` to systematically upgrade all kibana-me-logs applications on your Cloud Foundry.\n\nView logs for a specific app\n----------------------------\n\nIf you are binding one logstash service to many applications in a space, then you might want a way to only see the logs for one app at a time.\n\n`http://kibana.DOMAIN/#/dashboard/file/app-logs-01a4ad6a-51b1-450b-ab8d-ef5b836bb8cb.json`\n\nPut the GUID for the application into the URL above.\n\nAuthentication\n--------------\n\nIf you provide `kibana-me-logs` the `KIBANA_USERNAME` and `KIBANA_PASSWORD` environment variables\nit will use them as HTTP Basic Auth credentials to help secure your log data.\n\nSecurity weaknesses\n-------------------\n\nIf you do not  use SSL to connect to kibana-me-logs and are using the HTTP Basic Auth,\nyour credentials will not be encrypted.\n\nIt requires the running of a shared proxy that grants users access to any backend service. Currently it doesn't have any authentication pass-thru.\n\nBut, it might provide you something useful in the meantime. Users can see and search their logs. And each other's logs.\n\nAssumptions\n-----------\n\nIt is assumed that:\n\n-\tyou already have an application running on your own Cloud Foundry\n-\tyou are using the Docker/Logstash Service Broker (see below) or a service broker that provides matching credentials schema\n-\tyou have already bound your application to your logstash service instance and Cloud Foundry is already draining logs into it\n-\tyou have the Go programming language installed on your machine\n\nFor example:\n\n```\ncf create-service logstash14 free my-logstash-service\ncf bind-service my-app my-logstash-service\ncf restart my-app\n```\n\nYou can confirm that your application is bound to the service:\n\n```\n$ cf services\nGetting services in org system / space dev as admin...\nOK\n\nname                  service      plan   bound apps   status\nmy-logstash-service   logstash14   free   my-app       available\n```\n\nUsage\n-----\n\nTo view your application's logs in Kibana you need to deploy the `kibana-me-logs` application and also bind it to the same `my-logstash-service` service instance as above:\n\n```\ncd /tmp; rm -rf kibana-me-logs\ngit clone https://github.com/cloudfoundry-community/kibana-me-logs\ncd kibana-me-logs\ncf push kibana-myapp --no-start --random-route -b https://github.com/cloudfoundry/go-buildpack\ncf bs kibana-myapp my-logstash-service\ncf start kibana-myapp\n```\n\nNow view your Kibana UI in your browser. It should redirect to a url like `http://kibana-myapp.apps.1.2.3.4.xip.io/#/dashboard/file/logstash.json` automatically and start showing your logs.\n\nIf you are a regular Go user, you can also fetch the application using:\n\n```\ngo get github.com/cloudfoundry-community/kibana-me-logs\ncd $GOPATH/src/github.com/cloudfoundry-community/kibana-me-logs\n```\n\nDocker/Logstash Service Broker\n------------------------------\n\nA requirement for this application is that the service binding credentials to logstash/elasticsearch fit a certain schema. This is the schema that comes from the Docker/Logstash Service Broker.\n\nThe easiest way to deploy this service broker is with the docker-services-boshworkspace.\n\nSee its README for detailed setup instructions for administrators.\n\nWhen running `bosh setup deployment` choose \"Logstash 1.4\" as the service to be deployed.\n\nLogstash Service Brokers\n------------------------\n\nIf you are building your own service broker for Logstash/Elastic Search, then this application assumes that the binding credentials look like:\n\n```json\n{\n  \"name\": \"my-logstash-service\",\n  \"credentials\": {\n    \"hostname\": \"10.10.5.251\",\n    \"ports\": {\n     \"514/tcp\": \"49160\",\n     \"9200/tcp\": \"49161\",\n     \"9300/tcp\": \"49159\"\n    }\n  },\n  \"syslog_drain_url\": \"http://10.10.5.251:49160\",\n  ...\n}\n```\n\nThe `9200/tcp` port is the port for the Elastic Search API.\n\nIf your Elastic Search API is hosted on a different hostname than the remainder of the ELK cluster then please submit a PR/issue so we can discuss what to do next. Happy to help.\n\nYour service bindings should also include a `syslog_drain_url` URI. Cloud Foundry will use this to automatically setup a continuous syslog drain of your application's logs into your logstash/elastic search service instance.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudfoundry-community%2Fkibana-me-logs","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fcloudfoundry-community%2Fkibana-me-logs","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fcloudfoundry-community%2Fkibana-me-logs/lists"}